0

ファイルの最後まで、一度に 1 単語ずつテキスト ファイルを読み取る方法を探しています。これは現時点での私のコードですが、ファイルから 1 つの単語を読み取るだけで、それ以上は読み取っていません。ファイル全体を処理するにはどうすればよいですか?

 var ResourceStream = Application.GetResourceStream(new Uri("test.txt",UriKind.Relative));
            using (Stream myFileStream = ResourceStream.Stream)
            {
                string s = "";
                StreamReader myStreamReader = new StreamReader(myFileStream);
                s = myStreamReader.ReadToEnd();
                s = s.Trim();
                //tlbwords.Text = s;
                char[] delimiters = { '\n', '\r' };
                string[] words = s.Split(delimiters);
                tlbwords.Text = words[0];
           }
        }
    }
}
4

3 に答える 3

1

String[] lines = File.ReadAllLines(fileName);単語を使用してから区切ることができます。

于 2013-06-19T00:52:56.863 に答える
1

LINQ を使用してすべての単語を取得する:

var words = File
   .ReadAllLines(fileName)
   .SelectMany(line -> line.Split(' '))
   .Where(word => !string.IsNullOrWhiteSpace())
   .ToArray();

ジュリアン・ウルバーノの提案で編集:

var words = File
   .ReadAllLines(fileName)
   .SelectMany(line -> line.Split(' ',  StringSplitOptions.RemoveEmptyEntries))
   .ToArray();
于 2013-06-19T01:20:41.307 に答える
0

使用しない理由:

textbox1.Text = File.ReadAllText(filename);

マルチラインをtrueに設定します

于 2013-06-19T01:21:33.277 に答える