Fortran Coder

查看: 55|回复: 3

[输入输出] 新手求助一个关于read的问题

[复制链接]

2

帖子

1

主题

0

精华

新人

F 币
17 元
贡献
8 点
发表于 2018-11-21 11:17:57 | 显示全部楼层 |阅读模式
有一个数据文本需要用Fortran来read里面的数据然后处理,这个文本每行有481个数,我用数组读取它会有以下问题,
如果默认格式读取,如下
read(unit_,*) TIME,(P(i,j),j=1,480)

变量是成功被赋值的。
如果用格式化读取,如下
read(unit_,‘(a8,480f8.3)’) TIME,(P(i,j),j=1,480)
发现数组p没有被赋值,全是零
文本文件是由excel转化过来了,制表符分隔,

我想问一下出现这个问题的原因,谢谢啦
回复

使用道具 举报

613

帖子

0

主题

0

精华

大师

F 币
592 元
贡献
367 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2018-11-21 13:02:05 | 显示全部楼层
本帖最后由 vvt 于 2018-11-21 13:04 编辑

能用表控格式读取的数据,一律不要用格式读取。
明明是一个自由的房间,你非要给自己下一些套,还要问:“为什么被套住了挺疼的?”

还有,你可以这样写
read(unit_,*) TIME ,  P(i,:)


Fortran非常简单,能简单就不要写复杂了。

2

帖子

1

主题

0

精华

新人

F 币
17 元
贡献
8 点
 楼主| 发表于 2018-11-25 14:58:25 | 显示全部楼层
好的,就是想知道原因是什么,比较好奇。谢谢您

613

帖子

0

主题

0

精华

大师

F 币
592 元
贡献
367 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2018-11-25 21:27:22 来自移动端 | 显示全部楼层
原因就是你写的格式和实际文件内容不符
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2018-12-10 17:00

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

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