как прочитать из содержимого текстового файла расширение имени файла в c ?

#c #file #text-files

#c #файл #текстовые файлы

Вопрос:

Здравствуйте, я хочу прочитать текстовый файл, полный содержимого каталога

Вот мой пример:

ниже мой текстовый файл называется MyText.txt

MyText.txt

 title.txt,image.png,sound.mp3
 

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

Когда я имею в виду чтение, я имею в виду ссылку на него в операторе if, подобном этому:

 if(.mp3 exists in a text file)
{
  fprintf(stderr,"sees the mp3 extensions");
}
 

Я использую 32-разрядную версию Windows 7.

Мне нужен более кроссплатформенный подход.

Комментарии:

1. Дело не в языке, а в операционной системе, о которой вы не упомянули.

2. Не могли бы вы добавить некоторые знаки препинания, чтобы сделать ваш вопрос более понятным? Я не понимаю «я хочу, чтобы это было слишком специфично для расширений файлов, только для примера …»

Ответ №1:

Могу ли я предложить вам прочитать учебник по обработке файлов на C и еще один по строкам на C ?

Быстрого решения нет: вы должны прочитать файл, используя класс ifstream. После чтения файла и сохранения его в одной или нескольких строках вы можете использовать методы find и substr string для создания очереди из отдельных имен файлов. Затем, используя те же методы, вы можете снова разделить элементы в очереди, чтобы найти расширения и добавить их в набор. Набор не допускает дублирования, поэтому вы уверены, что все расширения появятся только один раз.