爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: 繁星一点

[求助] fortran读取二进制文件出错,求助!!!

[复制链接]

新浪微博达人勋

发表于 2017-7-27 21:38:53 | 显示全部楼层
繁星一点 发表于 2017-7-27 20:28
我直接把recl那一句删掉了,出来的数据还是一样。
我就是要把二进制的数据提取出来,写成十进制的整数数 ...

要么试试 integer(kind = 4)  或者 integer*8  ? 2这种短的我猜不用试

上面那个   ‘d hgt’  是提取整数的意思吧?我完全不懂那些

要么先计算下文件大小,和数据量匹配一下,看看到底提取出来的数据是哪种大小的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-7-27 22:02:10 | 显示全部楼层
weinihou 发表于 2017-7-27 21:38
要么试试 integer(kind = 4)  或者 integer*8  ? 2这种短的我猜不用试

上面那个   ‘d hgt’  是提取 ...

d hgt 就是提取hgt这个变量
我计算了提取出来的变量的个数是对的,只是值不对
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-7-27 22:07:04 | 显示全部楼层
river 发表于 2017-7-27 21:37
顺序没错啊,既然是用grads自带的函数写出来的文件没救一定是符合grads要求的格式的。你下载兰溪的grads2 ...

下载试了,果然成功了
瞬间有一种海阔天空的感觉
太谢谢了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-7-27 22:56:52 | 显示全部楼层
所以也不知道到底是哪里不合GrADS规还是有啥问题了
曲线救国绕开了Fortran二进制读取
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-7-28 11:58:19 | 显示全部楼层
繁星一点 发表于 2017-7-27 22:07
下载试了,果然成功了
瞬间有一种海阔天空的感觉
太谢谢了

兰溪那个脚本其实也是用了grads自带的命令,所以楼主还是要加强对grads的了解,grads还是很强大的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-7-31 08:54:01 | 显示全部楼层
river 发表于 2017-7-28 11:58
兰溪那个脚本其实也是用了grads自带的命令,所以楼主还是要加强对grads的了解,grads还是很强大的

前两天看到过那个帖子,当时一根筋的想用自己的这张方法,所以钻牛角尖了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-7-31 12:37:00 | 显示全部楼层
weinihou 发表于 2017-7-27 22:56
所以也不知道到底是哪里不合GrADS规还是有啥问题了
曲线救国绕开了Fortran二进制读取

是的,我怀疑是fortran顺序读取的问题。
画图做了检验,grd文件提取肯定没有出错。那唯一出错的就是读数据了,但是又查不出哪里错了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-7-31 14:13:00 | 显示全部楼层
很厉害,谢谢楼主
密码修改失败请联系微信:mofangbao
回复 支持 0 反对 1

使用道具 举报

新浪微博达人勋

发表于 2017-8-2 09:31:05 | 显示全部楼层
读取的地方这么改一下试试  
open(10,file='e:\nc\199806.grd',form='binary',access="direct",recl=nx*ny)  
         do t=1,nt
                read(10) ((hgt(x,y,nt),x=1.nx),y=1,ny)
         enddo
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-8-2 17:39:29 | 显示全部楼层
recl=nx*ny*nt
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表