请选择 进入手机版 | 继续访问电脑版
爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4896|回复: 5

[程序设计] 用matlab生成的dat文件,用fortran无法正确打开,请问如何调整格式呢

[复制链接]

新浪微博达人勋

发表于 2020-5-26 22:01:45 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
如题。试了很多遍。没学过fortran,学校做正压原始方程模式要用,应该怎么办?
我是这样读的:
open(2,file='h1.dat',form='formatted')
       do i=1,n
       read(2,*) (za(i,j),j=1,m)
       enddo
       print*,za
       pause
102  format(20f6.0)



用记事本打开是这样

用记事本打开是这样

用fortran打开读取却是这样

用fortran打开读取却是这样

h1.dat

1.88 KB, 阅读权限: 100, 下载次数: 0, 下载积分: 金钱 -5

导出的dat数据

密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2020-5-26 22:11:45 来自手机 | 显示全部楼层
补充,这是个16×20的数据
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 成长值: 32430
发表于 2020-5-27 00:15:48 | 显示全部楼层
本帖最后由 二爷名声在外 于 2020-5-27 00:18 编辑

没有看到怎么写入的
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-5-27 06:52:42 | 显示全部楼层

你好,感谢回复,matlab写入代码为:
fid=fopen('h.dat','w');%写入文件路径
[m,n]=size(a);
for i=1:1:m
    for j=1:1:n
       if j==n
         fprintf(fid,'%d.\n',a(i,j));
      else
        fprintf(fid,'%d. ',a(i,j));
       end
    end
end
fclose(fid);
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2020-5-27 07:02:37 | 显示全部楼层
我换成这种方式读就好了??
读入初始资料场
      open(2,file='h1.dat',form='formatted')
            read(2,102) za
102  format(20f6.0)
不太明白
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-6-4 16:34:07 | 显示全部楼层
谷梁陌尘 发表于 2020-5-27 07:02
我换成这种方式读就好了??
读入初始资料场
      open(2,file='h1.dat',form='formatted')

第一种方式循环读取的话,应该是要把 format(20f6.0) 改成 format(f6.0), 可以试试
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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