【发布时间】:2016-02-13 18:53:18
【问题描述】:
对 C# 有点陌生
是否可以使用 c# 更改 txt 文件中的文本?
我想打开一个包含以下内容的文本文件:
8881
8882
8883
8884
8885
将它们放在一个数组中,将行更改为:
'8881',
'8882',
'8883',
'8884',
'8885',
然后用修改后的行写出一个新的txt文件。
string[] lines = System.IO.File.ReadAllLines(@"C:\Users\Public\TestFolder\WriteLines2.txt");
//Foreach that lists all lines
System.Console.WriteLine("WriteLines2.txt contains following lines = ");
foreach (string line in lines)
{
Console.WriteLine(line);
}
如何才能更改每一行并将它们写入新的 txt?
【问题讨论】:
-
您需要遍历文件的内容并修改它们。
-
changedLine = "'" + line + "',"会将8881转换为'8881', -
您正在执行此操作:打开,将所有内容读入数组,然后关闭。然后使用数组。对于大文件,它可能会非常慢,甚至由于内存不足而失败。而是打开,逐行阅读,在中间写出来然后关闭。您可以使用几百万行进行测试。
-
题外话,如果你这样做不是为了学习,你为什么要把它变成那样的东西?闻起来像数据库操作。如果它的目的是这样,许多数据库后端会简单地读取原始文件就好了。
-
@CetinBasoz 是的,我知道对于大文件,流式读取比加载更好。我这样做是为了学习ofc。它与数据库无关。只是想学习操作文件。使用 SSMS 会非常不同,是的。我不需要任何帮助。
标签: c#