#c
#c
Вопрос:
Я пытаюсь получить int
значение из текстового файла. Это мой текущий алгоритм чтения файла:
if (q)
{
while ((ch = fgetc(q)) != EOF)
{
if(ch == )
printf("%c",ch);
}
}
else
{
printf("Failed to open the filen");
}
Внутри моего текстового файла:
Occupant's Name: qwe qwe
Room Number: 1
Occupant's Category: Superior Double
Occupant's Name: h j
Room Number: 1
Occupant's Category: Superior Double
Occupant's Name: h j
Room Number: 1
Occupant's Category: Superior Double
Я хотел бы получить каждый номер комнаты.
Комментарии:
1. Посмотрите
fscanf
.2. Я не вижу здесь попытки прочитать целое число.
3. спасибо, ребята .. уже понял
Ответ №1:
Рассмотрите возможность использования fgets для чтения каждой строки и sscanf для синтаксического анализа строки. Этот sscanf завершится ошибкой в строках, которые не начинаются с «Номер комнаты:».
char line[100] = "";
int room = 0;
if (q)
{
while (( fgets ( line, sizeof line, q)))
{
if( ( sscanf ( line, "Room Number:%d", amp;room)) == 1) {
printf("room number is %dn", room);
}
}
}
else
{
printf("Failed to open the filen");
}