Я столкнулся со следующей проблемой с Fortran: что при чтении массива символов, например, или в любом списке на самом деле из файла данных с помощью fmt = *, оба пробела без пробелов и запятые являются изначально рассматриваемые как разделители для элементов в массиве/списке. Тот факт, что запятые действуют как разделители, для меня большая проблема.Разделители запятой в Fortran
Вопрос: знаете ли вы какую-либо семантическую опцию или директиву компиляции в Фортране, которая позволяет рассматривать запятые в входных файлах как символы, а не как разделители, с единственными разделителями, являющимися пробелами? В качестве конкретного примера, я хотел бы, что при чтении записи, как:
x,y,z
с:
read (7,*) adummy
приведет adummy
(скалярной переменной символьного) получение значения x,y,z
не x
.
Любая помощь была бы наиболее желанной.
Спасибо IRO-бот. Отформатированное чтение действительно работает для простого случая, который я привел в качестве примера, но поскольку вы указали, что он не работает, например, для чтения записи: x, y, z – bunbury
@ user1499420 Я не уверен, что вы имеете в виду - пожалуйста, уточните в своем вопросе? Что именно не работает? – milancurcic
(Полный комментарий) Спасибо IRO-bot. Отформатированное чтение действительно работает для простого случая, который я привел в качестве примера, но поскольку вы указали, что он не работает, например, для чтения записи: x, y, zu, v, w в addomy, если это символ aray формы (/ 2 /), что больше похоже на мою реальную проблему. Кроме того, функция fmt = * считывания массива через разные записи во входных файлах будет потеряна. В моих проблемах данные иногда могут быть все в одной записи/строке или в последовательных. Я пытаюсь избежать написания правильной процедуры разбора, но вместо этого используйте funtionality fmt = * – bunbury