Как открывать файлы с разными именами последовательно?
Есть папка, в которой большое количество файлов .txt с разными именами, первая часть имени содержит дату, вторая часть, можно считать, случайна. Как открывать для чтения файл, не зная его точного имени один за другим по порядку до конца папки? Может можно из Windows подчерпнуть информацию какой по счету это файл и как-то получить его имя и передать в программу?
Ответы (1 шт):
Автор решения: Serge3leo
→ Ссылка
Резюме по вопросу. Во-первых, ссылки на англоязычные ответы: Listing the contents of a directory in Fortran и Printing Directory Listing in Fortran.
Во-вторых, относительно содержания тех ответов:
- Использование общеупотребительного расширения Fortran
call system(...)
выглядит сравнительно просто и, при правильном использовании, более менее надёжно. Правда, команда записи списка файлов в файл зависит от системы; - Обвязка над функциями API POSIX
opendir()
/readdir()
несколько сложнее, кроме того для WinAPI потребует доработки, зато эффективно. Правда, использованиеreaddir()
небезопасно в многопоточных программах, а использованиеreaddir_r()
тоже потребует доработки; - Использование готовых библиотек ссылается на ссылки из документации GNU Fortran. За IFPORT сейчас трудно что-то сказать ввиду заскоков Intel и госдепа США. Модули NAG, как бы, входят в проприетарную библиотеку NAG и, вероятно, Вам недоступны.
flibs
, в этой части, грязновато написан, могут быть проблемы с многопоточностью и не только, т.к. он делаетchdir()
и прочая, прочая.fortranposix
выглядит заброшенным.