首页 > 解决方案 > Fortan 完全可移植的 I/O 未格式化文件

问题描述

我已经找到了几个关于这个的问题和答案,但是在“stream”、“recl”、HDF 等中。我有点迷路(我是个新手)。如果在某个地方对我的问题有一个明确的答案,我深表歉意。这是我的问题:我想在现有的 Fortran 代码中插入一个“WRITE”语句,该语句生成一个未格式化的文件,随后我可以使用我编写的另一个后处理 Fortran 代码读取该文件。对于可移植性,我的意思是无论使用什么编译器和编译标志,理想情况下,在不同平台(计算机)之间,我都可以做到这一点。这可能吗?如何?如果不是,我必须接受哪些妥协?

如果答案得到详细但不太复杂的解释的支持,我们将不胜感激。

ps 我想使用未格式化的文件,因为它们更轻,而且 I/O 操作应该比格式化文件更快。正确的?

更新#1 从评论看来,严格来说不可能获得可移植到不同机器的未格式化文件。因此,让我们假设我想使用一台机器。我正在使用 ifort 和 gfortran。如果用 Fotran90 不行,我想我可以用 Fortran2003。对我来说,控制用于编译原始代码的编译标志有点复杂,但如果有必要,我也可以控制这方面。

标签: fortranbinaryfiles

解决方案


推荐阅读