C# .NET 3.5版本,适用于C语言中的ReadAllLines和WriteAllLines#

C# .NET 3.5版本,适用于C语言中的ReadAllLines和WriteAllLines#,c#,visual-studio-2008,.net-3.5,C#,Visual Studio 2008,.net 3.5,我正在尝试创建一个应用程序,可以打开一个.csv文件,在特定行的末尾添加一些用户输入的文本,然后保存并关闭该文件。我见过许多使用ReadAllLines和WriteAllines来实现这一点的解决方案,但由于某些原因,我一直在使用VS2008和.NET 3.5,它们显然没有这些。我想知道是否有人知道在3.5中实现这些功能的等效方法。如果我可以创建一个数组来保存文件中的每一行文本,我也许可以使用它们在数组中的索引来访问特定的行,向它们添加我想要的文本,然后保存文件。可悲的是,我不知道如何做到这一点

我正在尝试创建一个应用程序,可以打开一个.csv文件,在特定行的末尾添加一些用户输入的文本,然后保存并关闭该文件。我见过许多使用ReadAllLines和WriteAllines来实现这一点的解决方案,但由于某些原因,我一直在使用VS2008和.NET 3.5,它们显然没有这些。我想知道是否有人知道在3.5中实现这些功能的等效方法。如果我可以创建一个数组来保存文件中的每一行文本,我也许可以使用它们在数组中的索引来访问特定的行,向它们添加我想要的文本,然后保存文件。可悲的是,我不知道如何做到这一点,或者这是否可能。我对C#还相当陌生,所以这可能完全是胡说八道,但我希望不是!如果有人对我如何进行这项工作有任何建议,我将不胜感激。谢谢大家!

类似的方法应该会奏效(根据您的具体需要而改变)。是的,也许没有某些解决方案那么优雅,但它应该非常快:

public void AddUserBS(string filePath, string separator, string userBS)
{
  var reader = new StreamReader(filePath);
  var writer = new StreamReader(filePath + "tmp");

  string line;

  while(null != (line = reader.ReadLine())
  {
     writer.Write(line + separator + userBS);
  }

  reader.Dispose();
  writer.Dispose();

  File.Delete(filePath);
  File.Rename(filePath + "tmp", filePath)
}

StreamReader
StreamWriter
都是你的朋友,就像在美好的时光里一样。在这里@DaveShaw看看如何打造自己的。。。那时我才意识到实现并不是懒惰的。。。o、 o-我不确定我是从哪里得到这个假设的。Read/WriteAllines()自.NET 2以来就一直可用。0@HansPassant-新的是采用IEnumerable(而不仅仅是字符串[])的WriteAllines重载。这可能就是所指的“惰性”(不过请注意,ReadAllLines仍然返回字符串[])。