Stream и c ++ - файл разбора - PullRequest
       7

Stream и c ++ - файл разбора

1 голос
/ 02 ноября 2009

Я делал это раньше ... Но я забыл. У меня есть файл с некоторыми данными:

0,5 0,6 0,7 1,2 1,5

Как я могу прочитать это на с ++? Я сделал это с потоком ... что-то вроде:

float var = 0;
stream >> var;

Ответы [ 5 ]

6 голосов
/ 02 ноября 2009

Следующий фрагмент должен дать вам подсказку. Не забудьте включить <fstream>.

std::ifstream fin("filename.txt");
float value;
while (fin >> value)
{
    // Do whatever you want with the value
}

Не пытайтесь проверить fin.eof(), он не сообщит вам, если вы собираетесь перейти к концу файла.

3 голосов
/ 02 ноября 2009

Как то так?

std::ifstream stream("C:/a.txt");
    float var = 0;
    while(stream >> var)
    {
        //Do some processing
    }
0 голосов
/ 02 ноября 2009

Для чтения из файлов используйте std :: ifstream.

0 голосов
/ 02 ноября 2009

Вы имеете в виду, как открыть файл и прочитать с него данные?

Это должно выглядеть примерно так:

float var;
ifstream infile("filename");
if(infile.good()){
    while(!infile.eof()){
        infile >> var;
        cout << var << "is the next value\n";
    }
}
0 голосов
/ 02 ноября 2009

Как то так. Оператор << обрабатывает пробелы как разделитель. </p>

float array[5] = {0.0f};

for(int i = 0; i < 5; i++)
{
    stream >> array[i];
}

Кстати, я сделал 5, так как у вас было 5 в вашем примере. (и я предполагаю, что у вас есть настройки потока)

...