C# 读取txt文档内容并修改

we_1314 2016-06-28 06:25:55
本人新手,最近碰到一个问题,使用扫描枪离线功能,使用窗口读取本地txt文档的内容在listview里显示, 并且可以修改,改完后在txt文档里保存,求大神指点。
...全文
1427 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
南天空 2016-07-01
  • 打赏
  • 举报
回复
保存就是把原来数据清空重写,或者只写新数据。
mjp1234airen4385 2016-07-01
  • 打赏
  • 举报
回复
listview不能在表格上直接修改数据,可以使用datagridview,这个可以直接修改数据。
  • 打赏
  • 举报
回复
字段1 字段2 。。。。 字段7 差个逗号就是csv格式了,所以你就查下CscHelper这个类的用法吧,nuget上可以下载
we_1314 2016-06-30
  • 打赏
  • 举报
回复
引用 7 楼 starfd 的回复:
File.ReadAllText
File.WriteAllText
就这么任性…… 当然如果txt文件很大的话另选他法……
我存入的模式是 字段1 字段2 。。。。 字段7 1 2 。。。。。。。7 1 2 。。。。 7 。。。。。。。。。。。。。 现在只想将所有的 1 和7 取出来 放到 listview(winfrom情况)里展示 该怎么读取呢?
founder0127 2016-06-29
  • 打赏
  • 举报
回复
界面上拉四个控件,一个TextBox,multiline属性设置为true;一个读取文件按钮;一个编辑文件按钮和保存文件按钮,这两个按钮重叠放在一块。代码如下: private string path = "C:\\Users\\" + Environment.UserName + "\\Desktop\\Data.txt"; public Form1() { InitializeComponent(); bt_editFile.Visible = true; bt_saveFile.Visible = false; } private void bt_readFile_Click(object sender, EventArgs e) { if (File.Exists(path)) { textBox1.Text = string.Empty; string fileMessage = string.Empty; FileStream fs = new FileStream(path, System.IO.FileMode.Open, System.IO.FileAccess.Read); StreamReader sr = new StreamReader(fs, System.Text.Encoding.Default); fileMessage = sr.ReadToEnd(); if (string.IsNullOrEmpty(fileMessage)) { return; } textBox1.Text = fileMessage; sr.Close(); fs.Close(); } } private void bt_editFile_Click(object sender, EventArgs e) { textBox1.ReadOnly = false; bt_editFile.Visible = false; bt_saveFile.Visible = true; } private void bt_saveFile_Click(object sender, EventArgs e) { FileStream fs = new FileStream(path, FileMode.Create, FileAccess.Write); StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.Default); sw.Write(textBox1.Text); sw.Close(); fs.Close(); textBox1.ReadOnly = true; bt_editFile.Visible = true; bt_saveFile.Visible = false; }
巴士上的邂逅 2016-06-29
  • 打赏
  • 举报
回复
在这里扫描枪干嘛用?
wsh_mar 2016-06-29
  • 打赏
  • 举报
回复
读: public void GetTxtRead(string path, ref List<string> listStr) { StreamReader sr = new StreamReader(path, Encoding.Default); String line; while ((line = sr.ReadLine()) != null) { listStr.Add(line.ToString()); } sr.Close(); } 写: public void RecordTxt(string path, string date, string winCode,string minute) { FileInfo finfo = new FileInfo(path); if (!finfo.Exists) { FileStream stream; stream = File.Create(path); stream.Close(); } FileStream fs = new FileStream(path, FileMode.Create, FileAccess.Write); fs.Seek(0, SeekOrigin.Begin); fs.SetLength(0); fs.Close(); StreamWriter w = new StreamWriter(path); w.BaseStream.Seek(0, SeekOrigin.End); w.Write(date + "\r\n" + winCode+"\r\n" + minute); w.Close(); }
  • 打赏
  • 举报
回复
File.ReadAllText
File.WriteAllText
就这么任性…… 当然如果txt文件很大的话另选他法……
we_1314 2016-06-29
  • 打赏
  • 举报
回复
引用 5 楼 qqamoon 的回复:
[quote=引用 4 楼 we_1314 的回复:] 扫描枪在这里主要是先从数据库获取一些任务存到本地,然后在无网络的情况下修改任务。 最后联网上传至数据库
啊哟,吃果果的造假啊,直接改数据库不是更好? [/quote]主要是考虑到现场网络不好,有些任务要现场做啊
龍过鸡年 2016-06-29
  • 打赏
  • 举报
回复
引用 4 楼 we_1314 的回复:
扫描枪在这里主要是先从数据库获取一些任务存到本地,然后在无网络的情况下修改任务。 最后联网上传至数据库
啊哟,吃果果的造假啊,直接改数据库不是更好?
we_1314 2016-06-29
  • 打赏
  • 举报
回复
扫描枪在这里主要是先从数据库获取一些任务存到本地,然后在无网络的情况下修改任务。 最后联网上传至数据库

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧