Reading a string line per line in C#
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Easiest way to split a string on newlines in .net?
号
我试图读出并解释每行的一个字符串行。我看了一下StringReader课程,但我需要知道我什么时候上最后一行。下面是我要完成的一些伪代码:
1 2 3 | while (!stringReaderObject.atEndOfStream()) { interpret(stringReaderObject.readLine()); } |
有人知道怎么做吗?
谢谢!
伊凡
如果您是从文件中读取它,那么只需执行以下操作就更容易了:
1 2 | foreach(var myString in File.ReadAllLines(pathToFile)) interpret(myString); |
如果从其他地方(Web服务类等)获取字符串,则只需拆分字符串就更简单了:
1 2 | foreach(var myString in entireString.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries)) interpret(myString); |
。
读取行时检查是否为空-请参阅文档。
这样地:
1 2 3 4 | string line; while (null != (line = reader.ReadLine()) { Process(line); } |
号
我不知道你在哪里读书。如果它来自控制台,您可以检查输入结束字符串,如"quit",以表示输入结束。
1 2 3 4 | String input; while((input = reader.readLine()) !="quit"){ // do something } |
streamreader类具有endofstream属性。你研究过使用它吗?
拒绝是正确的:
http://msdn.microsoft.com/en-us/library/system.io.streamreader.endofstream.aspx
1 2 3 4 | while (!reader.EndOfStream) { string line = reader.ReadLine(); } |