Преобразование входного файла слов в вектор - C ++ - PullRequest
0 голосов
/ 12 марта 2012

Я создаю программу, которая читает входной файл только текста и создает вектор слов в этом входном файле. Программа, которая у меня сейчас есть, только запрашивает у пользователя имя входного файла, а затем останавливается после этого. В моем текстовом файле только 3 слова для теста, но к концу программы я надеюсь, что смогу читать большие текстовые файлы, такие как истории.
Мой код:

#include<string>
#include<iostream>
#include<vector>
#include<fstream> 


using namespace std;


int main(){

 string filename;  //name of text file
 string wordsFromFile;  //the words gathered from the text file

 cout << "Please enter the name of your text file" << endl;
 cin >> filename;

 ifstream fin(filename.c_str());

 fin >> wordsFromFile;

 while(fin >> wordsFromFile)
 {
   fin >> wordsFromFile;
   vector<string>word;
   for(int i=0; i<=word.size(); i++) {
      word.push_back(wordsFromFile);
      cout << word[i];}
   }

   fin.close();
   return 0; 
}

1 Ответ

0 голосов
/ 16 марта 2012

По поводу вашего актуального вопроса

Программа, которая у меня сейчас есть, только запрашивает у пользователя имя входного файла, а затем останавливается после этого.

Поскольку вы не проверяете, существует ли файл или нет, это не поможет вам узнать, что происходит. Возможно ли, что файл не находится в правильной папке? Кажется, вы не используете какой-либо путь перед именем файла, возможно, потому что вы даете полный путь в приглашении?

У меня есть вводная книга. объем того, что я пытаюсь сделать в этой программе, не описан в книге, хотя

Обычно редко можно найти книгу о том, что вы делаете. Однако, если вы хотите узнать больше о C ++, я бы порекомендовал C ++ Primer Plus, это очень хорошая книга.


Что касается цикла, я бы рекомендовал заполнять ваш список построчно, особенно если вы планируете загружать истории (например, пару мегабайт для одной истории).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...