比方说,我有一个1 GB的文本文件,我想阅读它。如果我试图打开这个文件,我会得到一个“内存溢出”的错误。我知道,通常的答案是“使用StreamReader.ReadLine()方法”。但我想知道这是如何工作的。如果使用ReadLine方法的程序想要获取一行,它将不得不早晚打开整个文本文件。据我所知,文件存储在磁盘上,它们可以用“全部或全部”原则在内存中打开。如果通过使用ReadLine()方法一次只将我的1 GB文本文件的一行存储在内存中,这意味着我们必须在读取1GB文本文件的每一行时为I-O磁盘。对于表演来说这不是一件可怕的事情吗?ReadLine如何在.NET中工作
我很困惑,我想关于这个的一些细节。
仅供参考,'ReadLine'不是C#的一部分 - 它是.NET的一部分。 –