作者kkarthur (aa)
看板Fortran
标题Re: [问题] 每一行读取不同的次数
时间Mon Jul 21 16:53:13 2014
※ 引述《iohan (iohan)》之铭言:
: 假设我有一个档案长这样
: 0 1 2
: 5 88 9 7 0 60
: 4
: 5 555
: .
: .
: .
: 每一行的元素数目都不一样没有规律
: 目前遇到的困难是READ後面放的变数数量必须和该行的元素数量一样
: 不然会出错
: 请问READ该怎麽写才能把全部的数字都读到
OPEN(UNIT=11,FILE="txt")
READ(11,"(A80)") LL
I=0
DO WHILE(.TRUE.)
READ(LL,*,IOSTAT=IOS) TT
IF(IOS/=0) EXIT
LL=LL(LEN_TRIM(TT)+2:)
I=I+1
READ(TT,*) KK(I) !文字转存数字
END DO
WRITE(*,*) KK
基本上就是先整行资料完整读成一个字串LL,
再利用回圈一个一个读取LL里面的资料
读到有错误之後就跳出回圈
最後把文字转存数字
I是整行资料的数量
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.123.79.129
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Fortran/M.1405932795.A.6C1.html
1F:推 iohan:跪拜 07/22 17:34
2F:推 jsb:不过这样仅限於资料中间固定空一格的情况。空格数不固定的话? 08/08 01:12
3F:→ qlman: 超强~~ 07/30 17:39