Как читать из текстового файла и разбивать предложения на C

0

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

Текстовый файл выглядит примерно так: "Является ли он красным?" Это больше, чем почтовый ящик? Это животное? "

В случае, если это влияет на код, я хочу скопировать каждую строку в узел, чтобы позже добавить дерево.

while (fgets(stringPtr, 100, filePtr) != ',')
   strcpy(stringPtr, treeNode);

Что-то вроде этого нормально?

  • 0
    Вы должны пометить как C или C ++, а не оба. (Если вы перечислите C, вы почти наверняка сможете использовать решение в C ++, но не наоборот.)
Теги:
file
tree

1 ответ

2

Учитывая ваше описание - что-то вроде следующего:

std::string question_string;
std::set<std::string> my_tree;

if (std::ifstream file_stream{filename})
{
    while (std::getline(file_stream, question_string, ','))
        my_tree.insert(question_string);
}
else
    std::cerr << "unable to open " << filename << '\n';

Вам нужно будет получить имя файла где-нибудь, включите соответствующие заголовки (google классы, если вам нужно).

  • 1
    Хороший ответ! Я исправляю небольшую ошибку в утверждении «если».
  • 0
    @CodeDreamer: кто-то отклонил, но хорошо заметил - я должен был использовать { и } вокруг filename .... Приветствия.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню