/*
         *   保存原理
         *   将LISTVIEW视为一行一行的字符串
         *   将所有的行合并成一个字符串 然后保存为TXT文件
         *  
* 而每行又是由 几个 子项组成,先把子项连接成字符串
         *   2019年11月27日 18:03:17
         */

源文件:https://download.csdn.net/download/u012663700/12001338

 using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace ListViewItemsReadWrite
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} //保存到文件,没有指定路径则路径就是当前EXE的路径
string conf = "test.txt";
/*
* 保存原理
* 将LISTVIEW视为一行一行的字符串
* 将所有的行合并成一个字符串
*
* 而每行又是由 几个 子项组成,先把子项连接成字符串
* 2019年11月27日 18:03:17
*/ //SAVE
private void button1_Click(object sender, EventArgs e)
{
//将listView中的内容保存成TXT格式
string[] arr = new string[listView1.Items.Count];
for (int i = ; i < listView1.Items.Count; i++)
{
string s = "";
int len = listView1.Items[].SubItems.Count;
for (int j = ; j < len; j++)
{
//用逗号作为分割符 如果 有子项中包含逗号 要出问题的
s += SqlString.Transform(listView1.Items[i].SubItems[j].Text) + ",";
} if (s.EndsWith(","))
s = s.Substring(, s.Length - ); arr[i] = s;
}
//保存到文件
File.WriteAllLines(conf, arr);
} //READ
private void button2_Click(object sender, EventArgs e)
{
//从文本中读取数据到listView当中 string[] array = File.ReadAllLines(conf); listView1.Items.Clear();
for (int i = ; i < array.Length; i++)
{
if (array[i].Length > )//不添加空行
{
ListViewItem listviewItem = new ListViewItem();
string s = array[i].ToString(); //这里没有对格式是否符合要求进行判断,如果内容被修改成其他格式则会出异常的
string[] arr = s.Split(',');
listviewItem.Text = SqlString.Restore(arr[]);
listviewItem.SubItems.Add(SqlString.Restore(arr[]));
listviewItem.SubItems.Add(SqlString.Restore(arr[]));
listviewItem.SubItems.Add(SqlString.Restore(arr[]));
listView1.Items.Add(listviewItem);
}
}
} private void button3_Click(object sender, EventArgs e)
{
listView1.Items.Clear();
}
}
}

listview1 保存和读取 listViewItems保存为txt的更多相关文章

  1. 【原】Learning Spark (Python版) 学习笔记(二)----键值对、数据读取与保存、共享特性

    本来应该上周更新的,结果碰上五一,懒癌发作,就推迟了 = =.以后还是要按时完成任务.废话不多说,第四章-第六章主要讲了三个内容:键值对.数据读取与保存与Spark的两个共享特性(累加器和广播变量). ...

  2. Protobuf for Python测试保存和读取文件

    安装pip, setuptools, and wheel 如果已经从python.org,安装啦Python 2 >=2.7.9 or Python 3 >=3.4 ,那么就已经有啦pip ...

  3. matlab各格式数据读取与保存函数

    数据处理及matlab的初学者,可能最一开始接触的就是数据的读取与保存: %matlab数据保存与读入 function datepro clear all; %产生随机数据 mat = rand(, ...

  4. JavaScript进阶(六)用JavaScript读取和保存文件

    用JavaScript读取和保存文件 因为Google还不提供同步插件数据的功能,所以导入和导出插件配置就必须和文件打交道了.而出于安全原因,只有IE才提供访问文件的API:但随着HTML 5的到来, ...

  5. Spark学习之数据读取与保存总结(一)

    一.动机 我们已经学了很多在 Spark 中对已分发的数据执行的操作.到目前为止,所展示的示例都是从本地集合或者普通文件中进行数据读取和保存的.但有时候,数据量可能大到无法放在一台机器中,这时就需要探 ...

  6. C# 结构体和List<T>类型数据转Json数据保存和读取

    C#  结构体和List<T>类型数据转Json数据保存和读取 一.结构体转Json public struct FaceLibrary { public string face_name ...

  7. pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)

    pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...

  8. Spark学习笔记4:数据读取与保存

    Spark对很多种文件格式的读取和保存方式都很简单.Spark会根据文件扩展名选择对应的处理方式. Spark支持的一些常见文件格式如下: 文本文件 使用文件路径作为参数调用SparkContext中 ...

  9. Python入门--15--文件读取、保存

    先看文件读取,open 1.文件打开模式: 打开模式 执行操作 'r' 以只读方式打开文件(默认) 'w'    以写入的方式打开文件,会覆盖已存在的文件 'x' 如果文件已经存在,使用此模式打开将引 ...

随机推荐

  1. Python定义点击右上角关闭按钮事件

    Python定义点击右上角关闭按钮事件(Python defines the event of clicking the close button in the upper right corner) ...

  2. Qt 添加程序图标和系统托盘图标

    添加程序图标 第一种方法: 1.创建程序的时候,选择添加默认图标 2.替换程序目录下的ico文件,编译生成即可. 第二种方法: 比较适合一开始没有添加程序图标的情况 1.项目右键-->添加--& ...

  3. android AlertDialog控件使用

    1.先创建activity_alert_dialog.xml <?xml version="1.0" encoding="utf-8"?> < ...

  4. python selenium八大定位方法

    一.定位方法 注意:元素属性必须唯一存在 #id定位 find_element_by_id() #name定位 find_element_by_name() #class_name定位 find_el ...

  5. 学习python的日常5

    形如__xxx__的变量或者函数名,在python中是有特殊用途的,例如__slots__是为了绑定属性的名称, __len()__方法是为了让class作用于len()函数,很多这样的函数都可以帮忙 ...

  6. 腾讯云服务器搭建WampServer环境

    软件环境Windows Server 2008 R2 企业版 SP1 64位 刚刚进入 Windows Server ,你会看到以下界面: 列出了服务器的基础信息和常用配置下载 XAMPP https ...

  7. Kubernetes-Istio之Sidecar自动注入

    前提: (官方提供) 1):确认使用的是Kubernetes服务器的受支持版本( 1.13.1.14.1.15):kubectl (官方提供,应该是1.13版本以上,我的是1.16版本) kubect ...

  8. 百度云服务器CentOs6.8安装gnome图形化界面并通过VNC远程访问

    一:安装gnome桌面 利用xshell 登陆上远程主机 依次执行下列命令: [root@lys]#yum groupinstall -y "X Window System" [r ...

  9. 安装CDH 5.15.1详解

    安装CDH 5.15.1详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.  一.安装Cloudera Manager 和CDH 1>.登陆Cloudera Manager ...

  10. Luogu P1339 热浪Heat Wave

    Luogu P1339 热浪Heat Wave 裸·单源最短路. 但是! 有以下坑点: 算过复杂度发现Floyd跑不过去就不要用了. 如果建边是双向边,边的数组大小要开两倍! 考场上如果再把初始化的$ ...