Fortran文件读写相关

Posted: Modified:

之前写Fortran程序都没用过读写文件数据,最近因为做的计算比较耗时,所以打算把计算中间结果存起来免得重复计算耗时,这就牵涉到如何读写数据,当然这方面的一些基本的知识任何一本Fortran书都有所涉及,下面要讲的是我遇到的问题。

要实现的目标是:在文件中读入一行数据,并将该行替换成另一组数据,再读取下一行数据,重复替换

遇到的问题:

最先想到的是以“顺序”(sequential)方式读写,然而这种方式无法实现目的,原因在于,以“顺序”方式打开的文件在写操作的过程中会把其后所有文件内容都清除,这样的话自然没办法进行下一次的数据读取了

那么就只好用“直接”(direct)方式吧,“直接”方式有各种不方便的地方,不过都还可以接受,但在实现过程中,当写数据的时候,发现最后数据都写在了一行里,原因是,“直接”方式的write是不会自动换行的,然而在fmt里添加/也不能换行,最后解决的方法是直接写入换行符的ascii码,即write(unit=,rec=,fmt="(,A)"),char(10)即可