Я пытаюсь сохранить определенные слова из текстового файла, чтобы построить ориентированный граф.Слова в текстовом файле являются именами, которые соответствуют узлам.Позже я хочу применить алгоритм обхода, который может найти путь между этими узлами.
В настоящее время я пытаюсь построить график.Мне удалось прочитать в файле с помощью fopen и функции fgets.
Мой вопрос: при чтении текстового файла с помощью функции fgets, как можно сохранить определенные слова из файла? (Узлы)Вы рекомендуете определенный тип данных для хранения слов, если цель состоит в том, чтобы потом иметь возможность применить к ним алгоритм обхода?
Простите, если мой вопрос прост, я новичок в программировании.
Чтобы вы лучше поняли, что я пытаюсь сделать, мой код выглядит следующим образом:
void read_file(){
char words[200];
FILE *fP;
fP = fopen("textfile.txt", "r");
while(fgets(words, 200, fP)) {
//Test to see if the file was read..
printf("%s", words);
//Here i want to save the Nodes:
}
fclose(fP);
}
Редактировать: Пример формата для текстового файла:
#Some nodes
14
SYD DAL # Sydney-Dallas
PAR BAR # Paris-Barcelona
CHI FRA # Chicago-Frankfurt
…and so on…
Три буквы соответствуют узлам, а правая часть знака "#" соответствует ребрам
Файл начинается с "#", но, похоже, это была команда для создания заголовка.Это как сейчас, но без пустых строк.Предполагается, что число соответствует фактическому количеству узлов.Но я не набрал все узлы.