【发布时间】:2014-06-02 07:50:23
【问题描述】:
我们可以使用StreamReader 或File.ReadAllLines 来读取文件。
例如,我想将每一行加载到 List 或 string[] 中,以便对每一行进行进一步操作。
string[] lines = File.ReadAllLines(@"C:\\file.txt");
foreach(string line in lines)
{
//DoSomething(line);
}
或
using (StreamReader reader = new StreamReader("file.txt"))
{
string line;
while ((line = reader.ReadLine()) != null)
{
//DoSomething(line); or //save line into List<string>
}
}
//if list is created loop through list here
应用程序遇到不同大小的文本文件。偶尔会从少数KBs 增长到MBs。
我的问题是哪一种方式是首选方式,为什么一种方式应该优于其他方式?
【问题讨论】:
-
首选用于什么目的?速度、内存还是?
-
@YuvalItzchakov 谢谢,我正在查看链接。
-
@Steve,速度和内存。如果出现较大的文本文件,则应用程序应该有效地读取所有行。
-
那么上面的链接应该会给你一个完整的答案