Fortran Coder

查看: 12000|回复: 8
打印 上一主题 下一主题

[文件读写] 读取固定行数据出错

[复制链接]

50

帖子

11

主题

0

精华

熟手

F 币
239 元
贡献
151 点
跳转到指定楼层
楼主
发表于 2018-4-9 16:48:02 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
如图所示,想实现读取固定两行数据(每行都是140列,格式都一样 )其中的数据,但是总是end of file,不知道为何?求大神指导?

[Fortran] 纯文本查看 复制代码
program mian
implicit none
integer,parameter::shou=1,wei=2,lie=140
integer,parameter::H=wei-shou+1
real::a(H,lie)
integer i
open(10,file="D:\哈弗\通量数据处理\通量\2003")


do i=1,H
    read(10,*)a(1,:),a(2,:)
end do 

  open(14,file="D:\哈弗\通量数据处理\通量结果所有\2003.txt")
  write(14,"(f8.1)")a(1,25),a(1,26),a(1,27),a(1,28),a(1,29),a(1,30),&
    a(2,25),a(2,26),a(2,27),a(2,28),a(2,29),a(2,30)


QQ截图20180409163457.png (6.36 KB, 下载次数: 338)

QQ截图20180409163457.png
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
沙发
发表于 2018-4-9 20:57:15 | 只看该作者
[Fortran] 纯文本查看 复制代码
do i=1,H
    read(10,*)a(i,:)
end do ...
write(14,"(f8.1)") a(1,25:30), a(2,25:30)

50

帖子

11

主题

0

精华

熟手

F 币
239 元
贡献
151 点
板凳
 楼主| 发表于 2018-4-10 08:33:05 | 只看该作者
li913 发表于 2018-4-9 20:57
do i=1,H
    read(10,*)a(i,:)
end do ...

不是这个问题,直接是读不了,还没进行到这一步,OPEN10哪里就end of file

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
地板
发表于 2018-4-10 10:14:15 | 只看该作者
FAQ之 常见错误分析
http://fcode.cn/guide-36-1.html

50

帖子

11

主题

0

精华

熟手

F 币
239 元
贡献
151 点
5#
 楼主| 发表于 2018-4-10 10:23:08 | 只看该作者
li913 发表于 2018-4-10 10:14
FAQ之 常见错误分析
http://fcode.cn/guide-36-1.html

好的谢谢

50

帖子

11

主题

0

精华

熟手

F 币
239 元
贡献
151 点
6#
 楼主| 发表于 2018-4-10 10:31:09 | 只看该作者

你好,还想请教你个问题,我想将一个文本的两个变量数据分别读入后再做差,可是试了几遍都还是出现open11时候end of file,就是放在一个代码里面老是出现这样的问题,分别就可以,请教谢谢。代码如下:
[Fortran] 纯文本查看 复制代码
program mianimplicit none
!real::a(1,140)
integer,parameter::shou=1,wei=1,lie=140
integer,parameter::H=wei-shou+1
real::a(H,lie)
real::mnpp(36),mco2(36),mnep(36)
integer i,j
open(10,file="D:\长白山03-05\通量数据处理\通量\2003")


do i=1,H
    read(10,*)a(1,:)
end do 
   open(11,file="D:\mnpp模拟结果\2003")
   write(11,"(f8.1)")a(1,69:104)
   open(12,file="D:\\mco2模拟结果\2003")
   write(12,"(f8.1)")a(1,105:140)

do j=1,36
    read(11,*)mnpp(j)
    read(12,*)mco2(j)
    mnep(j)=mnpp(j)-mco2(j)
end do 
    open(13,file="D:\NEP模拟结果\2003")
    write(13,"(f8.1)")mnep

  stop
end


QQ截图20180410103009.png (9.99 KB, 下载次数: 312)

QQ截图20180410103009.png

490

帖子

4

主题

0

精华

大宗师

F 币
3298 元
贡献
1948 点

水王勋章元老勋章热心勋章

7#
发表于 2018-4-10 12:31:25 | 只看该作者
有open无close怎么行呢?

50

帖子

11

主题

0

精华

熟手

F 币
239 元
贡献
151 点
8#
 楼主| 发表于 2018-4-10 18:06:10 | 只看该作者
pasuka 发表于 2018-4-10 12:31
有open无close怎么行呢?

在此声明,不是close的问题,你好好看看代码,直接end of file,加上close也一样

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
9#
发表于 2018-4-10 19:12:56 | 只看该作者
可能是文件名的后缀问题。

QQ截图20180410190954.png (23.54 KB, 下载次数: 290)

QQ截图20180410190954.png
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-12-26 19:52

Powered by Tencent X3.4

© 2013-2024 Tencent

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