相当于c#中的ReadAllLines和WriteAllLines

本文关键字:WriteAllLines ReadAllLines 中的 相当于 | 更新日期: 2023-09-27 18:06:41

我试图创建一个可以打开。csv文件的应用程序,将一些用户输入的文本添加到特定行的末尾,然后保存并关闭该文件。我已经看到了许多使用ReadAllLines和WriteAllLines来实现这一点的解决方案,但由于某些原因,我被困在使用VS2008和。net 3.5,显然没有这些。我想知道是否有人知道在3.5中实现这些的等效方法。如果我可以创建一个数组来保存文件中的每一行文本,那么我就可以使用数组中的索引访问特定的行,向其中添加我想要的文本,然后保存文件。可悲的是,我不确定如何做到这一点,或者它是否可能。我还是c#的新手,所以这可能是完全的胡言乱语,但我希望它不是!如果有人有任何建议,我怎么可能去这个,这将是非常感激。谢谢你!

相当于c#中的ReadAllLines和WriteAllLines

这样应该可以工作(根据您的具体需要更改)。是的,也许没有一些解决方案那么优雅,但它应该非常快:

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)
}