11

TextReader から行をループするにはどうすればよいsourceですか?

私は試した

foreach (var line in source)

しかし、エラーが発生しました

'System.IO.TextReader' には 'GetEnumerator' のパブリック定義が含まれていないため、foreach ステートメントは 'System.IO.TextReader' 型の変数を操作できません。

4

3 に答える 3

41
string line;
while ((line = myTextReader.ReadLine()) != null)
{
    DoSomethingWith(line);
}
于 2012-10-02T09:13:47.723 に答える
18

遅延実行メソッドを使用File.ReadLinesしてから、行をループできます。

foreach (var line in File.ReadLines("test.txt"))
{
}

詳しくは:

http://msdn.microsoft.com/en-us/library/dd383503.aspx

于 2012-10-02T09:10:47.703 に答える
3

このコードで試すことができます-に基づいてReadLine method

        string line = null;
        System.IO.TextReader readFile = new StreamReader("...."); //Adjust your path
        while (true)
        {
            line = readFile.ReadLine();
            if (line == null)
            {
                break;    
            }
            MessageBox.Show (line);
        }
        readFile.Close();
        readFile = null;
于 2012-10-02T09:10:56.973 に答える