- 积分
- 28599
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2011-6-29
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 freekiller 于 2014-8-1 12:34 编辑
程序很简单,读取一个数然用成binary和unformatted写出, 最后读取屏幕显示
program testbinandunformatted
implicit none
real(kind=8) :: a(100)
integer :: i, j, rl, rc
real(kind=8) :: f1(100),f2(100),f3(100),f4(100)
a= 10.000
! open file and write
open(12,file="a.bin",form="binary",access='direct',recl=8)
open(13,file="b.bin",form="unformatted",access='direct',recl=8)
rl = 0
do i = 1, 100
rl = rl + 1
write(12,rec=rl) a(i)
write(13,rec=rl) a(i)
end do
close (12)
close (13)
! open the exist file and read
open(14,file="a.bin",form="binary", access='direct',recl=8)
open(15,file="b.bin",form="unformatted",access='direct',recl=8)
rc = 0
do j = 1, 100
rc = rc + 1
read(14,rec=rc) f1(j)
read(15,rec=rc) f2(j)
write(6,*) j, f1(j), f2(j)
end do
stop
end
程序运行结果:
文件排列方式(可以用ultraedit查看)
binary
unformatted
文件大小
binary作为一种非标准的二进制格式,与unformatted的排列有着一定的区别。数据的大小、读取方式与写入数据的类型有一定的关系。这也是为什么二进制文件在不知道格式的情况下难以正确的原因。
仅供参考,欢迎拍砖。
|
|