| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > 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
|