Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何读取循环中的每一行文件?_C#_.net_Stream - Fatal编程技术网

C# 如何读取循环中的每一行文件?

C# 如何读取循环中的每一行文件?,c#,.net,stream,C#,.net,Stream,我有一个System.IO.Stream从(文件)中获取内容。我做了以下工作: using (var reader = new StreamReader(mystream)) { var filecontent = reader.ReadLine(); } 这只捕获了一行。我想把每一行放入列表。如何做到这一点?在中使用添加 while (reader.Peek() >= 0){ list.add(reader.readline); } 如果您有文件: List<str

我有一个
System.IO.Stream
从(文件)中获取内容。我做了以下工作:

using (var reader = new StreamReader(mystream))
{
  var filecontent = reader.ReadLine();
}

这只捕获了一行。我想把每一行放入
列表
。如何做到这一点?

中使用
添加

while (reader.Peek() >= 0){
   list.add(reader.readline);
}

如果您有文件:

 List<string> allLines = File.ReadAllLines(fileName).ToList();
List allLines=File.ReadAllLines(fileName.ToList();
如果您使用的是steam而不是文件:

List<string> allLines = new List<string>();
    using (StreamReader reader = new StreamReader(stream))
    {
        string line;
        while ((line = reader.ReadLine()) != null)
        {
        allLines.Add(line); // Add to list.     
        }
    }
List allLines=new List();
使用(StreamReader=新StreamReader(stream))
{
弦线;
而((line=reader.ReadLine())!=null)
{
allLines.Add(line);//添加到列表。
}
}

为什么不使用?(既然你说你从文件中获取内容)你从哪里获取文件?我只有一个流。ReadAllLines适用于小文件,但会将所有内容加载到内存中。在这种特殊情况下,OP需要一个
列表
,这是一个好主意,但未来的读者会意识到,这并不总是“读取循环中的每一行文件”的最佳方式。@4thSpace:System.IO.file.ReadAllLines链接为duplicate post显示了读取文件/流的多种方式(或使用中所示的迭代器)。。。但我建议首先阅读一些C#基础知识,比如循环(
,而对于
/
),因为这似乎是这个问题的主要问题。