我有一个 txt 文件,其中包含以逗号分隔的数字。
例子:
2, 4, 7, 8, 15, 17, 19, 20
1, 5, 13, 14, 15, 17, 19, 20
等等。
我想把它们写在屏幕上,但没有逗号。喜欢:
2 4 7 8 15 17 19 20
1 5 13 14 15 17 19 20
我有这段代码,但它只写出奇数行,我需要所有的文本。
StreamReader input = new StreamReader(@"c:\c#\inp.txt");
string text;
string[] bits;
int x;
do
{
text = input.ReadLine();
bits = text.Split(',');
for (int i = 0; i < 8; i++)
{
x = int.Parse(bits[i]);
Console.Write(x + " ");
}
Console.WriteLine();
} while ((text = input.ReadLine()) != null);
感谢任何帮助。
您正在阅读该行两次;您应该只阅读一次该行。您可以通过使用循环体的条件检查的存储值来完成此操作,或者更简单地通过使用 EndOfStream
作为循环条件。
如果连一行都没有,您还应该使用 while
,而不是 do
/while
:
StreamReader input = new StreamReader(@"c:\c#\inp.txt");
while (!input.EndOfStream)
{
string text = input.ReadLine();
string[] bits = text.Split(',');
for (int i = 0; i < 8; i++)
{
int x = int.Parse(bits[i]);
Console.Write(x + " ");
}
Console.WriteLine();
}
我是一名优秀的程序员,十分优秀!