主题:请问AIX(IBM)环境中xlf90 打开文件不认binary关键字怎么办?
freekiller
[专家分:20] 发布于 2011-07-25 17:22:00
请问AIX(IBM)环境中xlf90 打开文件不认binary关键字怎么办?
用unformatted关键字是可以的,但是我的可视化软件只认binary格式,有什么办法转换吗?
谢谢
回复列表 (共21个回复)
沙发
cgl_lgs [专家分:21040] 发布于 2011-07-25 22:20:00
大哥啊,UNFORMATTED就是BINARY啊。。。
板凳
freekiller [专家分:20] 发布于 2011-07-26 21:44:00
[quote]大哥啊,UNFORMATTED就是BINARY啊。。。[/quote]
是吗?至少我现在认为unformatted和binary不是一样的。
unformatted会记录一个快数据的头尾信息,而binary是不会的
3 楼
cgl_lgs [专家分:21040] 发布于 2011-07-27 10:25:00
没听说记录什么头尾信息啊。我一直用的很好。
4 楼
freekiller [专家分:20] 发布于 2011-07-27 11:11:00
[quote]没听说记录什么头尾信息啊。我一直用的很好。[/quote]
我在cvf下也用得好好的
在AIX环境下,binary关键字不认。用formatted写出来的文件大多了
比在cvf环境下写成binary的大8、9倍,
5 楼
cgl_lgs [专家分:21040] 发布于 2011-07-27 16:56:00
应该是基数不同,记录长度单位可能不是字节了。
6 楼
臭石头雪球 [专家分:23030] 发布于 2011-07-28 08:29:00
unformatted和binary 都是二进制文件,但是稍有差别。
对于 direct 读取,两者是一样的
对于顺序读取,则不同。比如记录 'ABCDEFGH' 和 [color=red]32[/color] 两个数据
unformatted 会在记录前后各用 4 字节描述该记录的长度。
[quote]
08 00 00 00 ( ABCDEFGH ) 08 00 00 00[color=red] 04 00 00 00 20 00 00 00 04 00 00 00[/color][/quote]
而 binary 不会
[quote]
( ABCDEFGH ) [color=red]20 00 00 00[/color][/quote]
如果楼主的编译器不识别 binary,也是正常的,因为它本来就不是标准的 Fortran 语法。
楼主可能需要对代码做较大的改动。比如改用 direct 读取。
7 楼
cgl_lgs [专家分:21040] 发布于 2011-07-28 09:28:00
石头兄好久不见啦:)
我记得如果不设置访问方式,UNFORMATTED默认就是DIRECT哈:)
8 楼
臭石头雪球 [专家分:23030] 发布于 2011-07-28 15:03:00
呵呵,最近忙啊。我不记得默认是什么,反正我每次都自己设置是 direct 还是顺序
9 楼
dongyuanxun [专家分:7180] 发布于 2011-07-28 22:37:00
群主你好
10 楼
cgl_lgs [专家分:21040] 发布于 2011-07-29 10:17:00
群主?
我来回复