【问题标题】:How to update or replace the csv data in c#如何在c#中更新或替换csv数据
【发布时间】:2017-02-17 16:39:57
【问题描述】:

我是编程新手,你能帮我吗?因为每次我运行它都会复制数据,现在我想替换或只是更新它,这是我的代码..谢谢

StreamWriter writer = null;
StringBuilder strbuilder = null;
string dir = Application.StartupPath;
if (!Directory.Exists(dir))
{
    Directory.CreateDirectory(dir);
}


string path = Path.Combine(dir, "test.csv");
strbuilder = new StringBuilder();
strbuilder.Append("\n");
foreach (var a in listofuser)
{

    strbuilder.Append(a.SystemUserID.ToString() + "," + a.FullName.ToString() + "," + a.Department.ToString() +","+ Environment.NewLine);

}


writer = new StreamWriter(path, true);
writer.Write(strbuilder);
writer.Close();

【问题讨论】:

  • 如果文件相当小(并且 CSV 文件确实应该如此),那么我想一个简单的方法是将文件的内容读入内存集合(List<T> of some自定义对象),编辑该集合中您想要编辑的任何内容,然后将整个内容写回一个新文件(如果需要,覆盖原始文件)。
  • 这个问题非常广泛。您要更新或替换多少数据?更新/更改的说明来自哪里?
  • 先生,我里面有大量文件,所以每次运行程序时都需要替换或更新它
  • 这就像当我运行程序时它会创建一个csv文件,然后当我重新运行它时它会替换或更新csv文件中的数据,但事情是每次我重新运行它,它重复数据

标签: c# winforms csv


【解决方案1】:

当你构建你的streamwriter时,你告诉它追加(添加到文件的末尾)。听起来您希望它覆盖(如果文件已经存在,请替换它)。

writer = new StreamWriter(path, false);

https://msdn.microsoft.com/en-us/library/36b035cb(v=vs.110).aspx

【讨论】:

    猜你喜欢
    • 2018-06-16
    • 1970-01-01
    • 2019-05-17
    • 2014-04-28
    • 1970-01-01
    • 2016-09-18
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    相关资源
    最近更新 更多