Цель:
Я читаю текстовый файл слово за словом и сохраняю каждое слово как элемент в массиве. Затем я печатаю этот массив, слово за словом. Я знаю, что это можно сделать более эффективно, но это для назначения, и я должен использовать массив.Как я могу игнорировать символ «конец строки» или «новая строка» при чтении текстовых файлов слово за словом?
Я делаю больше с массивом, например, подсчитывая повторяющиеся элементы, удаляя определенные элементы и т. Д. Я также успешно преобразовал файлы в полностью строчные и без пунктуации.
Текущая ситуация:
У меня есть текстовый файл, который выглядит следующим образом:
beginning of file
more lines with some bizzare spacing
some lines next to each other
while
others are farther apart
eof
Вот некоторые из моего кода с itemsInArray
инициализируется в 0
и массив слов обозначаться как wordArray[ (approriate length for my file) ]
ifstream infile;
infile.open(fileExample);
while (!infile.eof()) {
string temp;
getline(infile,temp,' '); // Successfully reads words seperated by a single space
if ((temp != "") && (temp != '\n') && (temp != " ") && (temp != "\n") && (temp != "\0") {
wordArray[itemsInArray] = temp;
itemsInArray++;
}
Проблема:
Мой код сохранения символ конца строки в качестве элемента в моем массиве. В моей инструкции if я перечислил все способы, с помощью которых я пытался отличить символ конца строки, но мне не повезло.
Как предотвратить сохранение символа конца строки в качестве элемента в массиве?
Я пробовал несколько других методов, которые я нашел на темы похожие на это, включая что-то с *const char
, что я не мог сделать работу, а также итерации и удаления новых символов строки. Я работаю над этим часами, я не хочу повторять ту же проблему и пробовал много разных методов.
В моем .txt-файле содержится целая книга без прописных букв на данный момент. Существует несколько «возвратов» или новых строк для разделения глав. Я уже обошел сохранение лишних пробелов в качестве элементов в моем массиве, я только боюсь ** не ** сохранять новые строковые символы. Еще раз спасибо. – wrightMatthew
* Родственные *: http://stackoverflow.com/q/5605125/78845 – Johnsyweb