作者zmack0905 (降太)
看板Fortran
标题[问题] 资料行数读取的差异
时间Fri Jul 5 13:55:22 2013
今天有一笔资料,总之我目前得先算出他的行数
再用来当作可变阵列的维度来读档
先用这个
DO WHILE (.true.) !iostat:读取正常=0就是了
READ(unit=20,fmt=*,iostat=state)temp_string
PRINT*,temp_string,state
IF( state/=0 )EXIT
source=source+1
END DO
回报source = 72494
结果下面要读档的时候表示 end of reading
以为行数没读对,於是回头去确认,打开vi看
资料的确是72494行..
於是在读档回圈中加一行让他把目前进行到第几圈print出来
72422
72423
72424
72425
72426
forrtl: severe (24): end-of-file during read, unit 20,
因为我是放在回圈的最後,所以应该是读完72426,在要读72427的时候出错
请问一下是怎麽回事囧....?
原始码
http://freakshare.com/files/a8fuusx8/Text2.for.html
资料
http://freakshare.com/files/rv6cuk20/ted71pointfinally.txt.html
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.120.29.185
1F:→ rex0707:建议档案在最下面多一行是空白的 07/05 14:30
2F:→ zmack0905:是指要读的资料吗?我试试看 07/05 14:34
3F:→ zmack0905:是过了 可是没有效果囧... 07/05 14:54
4F:→ gilocustom:可以考虑把程式码+资料都上传让大家看看,方便揪错。 07/05 15:42
附上了=口=...
※ 编辑: zmack0905 来自: 140.120.29.185 (07/05 16:05)
5F:→ kkarthur:去看看你的资料档,第一列数据不是连续的 07/05 16:30
6F:→ kkarthur:只有382,384 没有383 07/05 16:30
7F:→ kkarthur:同时印temp_string和source 你就能看出差异了 07/05 16:33
那部分我知道,在计算笔数的时候我都是忽略那一列.
因为不管是用vi算还是用程式去跑回圈,都不需要在乎那列连不连续
还是说那个没排会有差?(不是就当做一个值而已吗@@>?)
※ 编辑: zmack0905 来自: 123.240.156.97 (07/05 22:27)