这应该是非常简单的事情。我只想从一个由空格分隔的标记组成的文本文件中读取数字和单词。在C#中如何做到这一点?例如,在C++中,下面的代码可以读取整数、浮点数和单词。我不想使用正则表达式或编写任何特殊的解析代码。
ifstream in("file.txt");
int int_val;
float float_val;
string string_val;
in >> int_val >> float_val >> string_val;
in.close();
此外,每当读取令牌时,不应读入该令牌之外的一个字符。这允许进一步的文件读取取决于所读取的令牌的值。作为一个具体的示例,请考虑
string decider;
int size;
string name;
in >> decider;
if (decider == "name")
in >> name;
else if (decider == "size")
in >> size;
else if (!decider.empty() && decider[0] == '#')
read_remainder_of_line(in);
解析一个二进制PNM文件也是一个很好的例子,说明了为什么您希望在读入一个完整的令牌后立即停止读取文件。
https://stackoverflow.com/questions/1968328
复制相似问题