используя ifstream в c ++ - PullRequest
       3

используя ifstream в c ++

3 голосов
/ 12 декабря 2010

У меня есть следующий код для чтения из файла

#include <queue>
#include <iostream>
#include <fstream>
#include <string>
main(int argc,char * argv[])
{
   ifstream myFile(argv[1]);
   queue<String> myQueue;
   if(myFile.is_open())
      {
         while(...
         ///my read here
      }
}

У меня есть такой файл ввода

1234 345
A 2 234
B 2 345
C 3 345

Я хочу сделать эквивалент этого в цикле чтения

myQueue.push("1234");
myQueue.push("345");
myQueue.push("A");
myQueue.push("2");
myQueue.push("234");
myQueue.push("B");
...

Какой лучший способ сделать это?

Спасибо!

Ответы [ 2 ]

6 голосов
/ 12 декабря 2010
string input;
myFile >> input;
myQueue.push(input);

Не проверено, но я считаю, что это работает.

Кстати, если вы хотите проанализировать весь файл:

while(myFile>>input)

Спасибо rubenvb за напоминание мне

2 голосов
/ 12 декабря 2010
#include <queue>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main(int argc,char * argv[])
{
   if (argc < 2)
   {
      return -1;
   }

   ifstream myFile(argv[1]);

   queue<string> myQueue;
   string input;
   while(myFile >> input)
   {
         myQueue.push(input);
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...