Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Fortran > [General] Создание файлов с разными именами |
Автор: OlikFleur 27.10.2009, 18:22 |
Подскажите, пожалуйста! В программе обсчитываю случаи для разных значений параметра. Надо записывать результаты в разные файлы, поэтому, естественно, хочу, чтобы название файла содержало значение параметра ( real(8) ). Как это сделать? Я так понимаю, что в функции open(1,file=name,status='unknown') надо name определять как character name и его изменять (собственно интересует, какая функция тут нужна). |
Автор: FCM 27.10.2009, 19:16 | ||
Конечно впечатывать REAL(8)это вещь в себе. Предложу один вариант сходу (он не будет идеальным, но потом подправим) с использованием конкатенации // и усечения пустых позиций TRIM. Будем к базовому имени BASE добавлять суффикс из преварительно преобразованного в строку REAL(8) числа в фиксированном формате.
FINNAME используй в качестве имени файла. Формат F0.10 Попробуй, напиши что получилось. |
Автор: OlikFleur 27.10.2009, 20:14 | ||
Спасибо, все работает! ![]() Единственное замечание (вдруг кому-то пригодится). Лучше делать так:
Примерно так... Тогда сразу же добавляется расширение файла... Еще: я брала массив размера 100, так как мой длинный путь к файлу просто не влез в 50 ![]() |
Автор: popovda 27.10.2009, 20:20 |
А ещё удобнее для этих целей использовать iso_varing_string. Т.е. строки переменной длины. Исходник скачать можно, погуглив. Стандарт 95 part 2 (или 3). |
Автор: FCM 27.10.2009, 20:45 | ||
OlikFleur, или так
|
Автор: FCM 27.10.2009, 21:40 | ||
Выше я вводил формат типа F0.xx , чтобы в SUFFIX не было пробелов слева. Можно и нужно обойтись без этого ограничения на формат, применив функцию ADJUSTL
|