[問題] 資料行數讀取的差異

作者: zmack0905 (降太)   2013-07-05 13:55:22
今天有一筆資料,總之我目前得先算出他的行數
再用來當作可變陣列的維度來讀檔
先用這個
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
作者: rex0707 (我就是我)   2013-07-05 14:30:00
建議檔案在最下面多一行是空白的
作者: zmack0905 (降太)   2013-07-05 14:34:00
是指要讀的資料嗎?我試試看是過了 可是沒有效果囧...
作者: gilocustom   2013-07-05 15:42:00
可以考慮把程式碼+資料都上傳讓大家看看,方便揪錯。
作者: kkarthur (aa)   2013-07-05 16:30:00
去看看你的資料檔,第一列數據不是連續的只有382,384 沒有383同時印temp_string和source 你就能看出差異了

Links booklink

Contact Us: admin [ a t ] ucptt.com