有没有人有任何关于我如何使用FORTRAN(或任何其他允许你编写二进制文件的语言)创建带有来自.csv数据的多条记录的无格式直接访问二进制文件的指针?希望问题很简单,不需要示例代码。也不一定是.csv。我只需要一种将分隔文本文档转换为具有多个记录的直接访问,无格式二进制文件的通用方法。
干杯, 亚伦
答案 0 :(得分:5)
您只需将格式化的IO读入数组,然后再使用无格式的直接访问即可将其写入。
像这样:
program test
implicit none
integer :: dat(3)
integer :: rl
open(file="data.csv", unit=23, action="read", status="old")
read(23,*) dat
close(23)
inquire(iolength=rl) dat
open(file="data.bin", unit=24, action="write", status="replace", &
& form="unformatted", access="direct", recl=rl)
write(24,rec=1) dat
close(24)
end program test
这将读取文件data.csv中的3个值,它们可能如下所示: 1,2,3 并将其以二进制形式写入文件data.bin。