Это то, что должно быть очень просто. Я просто хочу читать числа и слова из текстового файла, состоящего из токенов, разделенных пробелом. Как вы это делаете на С#? Например, в С++ следующий код будет работать для чтения целого числа, float и word. Я не хочу использовать регулярное выражение или писать какой-либо специальный синтаксический код.
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 файла также является хорошим примером того, почему вы хотите прекратить чтение файла, как только будет прочитан полный токен.