【发布时间】:2016-06-08 16:44:34
【问题描述】:
我有一个System.IO.Stream,我正在从(文件)获取内容。我执行以下操作:
using (var reader = new StreamReader(mystream))
{
var filecontent = reader.ReadLine();
}
这只捕获一行。我想将每一行放入List<String>。怎么可能?
【问题讨论】:
-
为什么不使用
File.ReadAllLines? (因为你说你从文件中获取内容) -
你从哪里得到文件?我只有一个 Stream。
-
ReadAllLines 适用于小文件,但会将所有内容加载到内存中。在 OP 想要
List<string>的特定情况下,这是一个好主意,但未来的读者要知道,这并不总是“循环读取每一行文件”的最佳方式。 -
@4thSpace: System.IO.File.ReadAllLines msdn.microsoft.com/en-us/library/…
-
Linked as duplicate post 显示了读取文件/流的多种方法(或使用stackoverflow.com/questions/1271225/… 中显示的迭代器)...但我建议首先阅读一些 C# 基础知识,例如循环(
while/for) 因为它似乎是这个问题的主要问题。