看板 Fortran 關於我們 聯絡資訊
我有個關於讀檔的問題想要請教大家。 現在有一個檔案名稱為data,內容有四行,如下: -3.05430d0 7.61854d0 1.47665d0 -11.92365d0 現在,我希望可以一行一行去讀取這四個數字,程式碼大略是以下這樣: filename = '/home/data' open(unit=10,file=filename) Do coefi = 1,4 read(10,"(D17.11)") coef write(*,"(D17.11)") coef If ( coefi == 1 ) sss1 = coef If ( coefi == 2 ) sss2 = coef If ( coefi == 3 ) sss3 = coef If ( coefi == 4 ) sss4 = coef 執行完之後,發現這樣寫,最後它讀到的數字會是: -.30543000000D+01 0.76185400000D+01 0.14766500000D+01 -.11923650000D+02 而不是原先檔案裡頭的: -3.05430d0 7.61854d0 1.47665d0 -11.92365d0 不曉得為什麼,它會讓所有的數字都移到小數點後面, 但是我需要的是,「執行完之後」,出現的結果就是原先檔案的內容,也就是: -3.05430d0 7.61854d0 1.47665d0 -11.92365d0 請問大家,要如何處理,它才不會最後列印到螢幕的結果,都是零點多少開頭。 謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.195
charlesdc:我眼睛應該還沒瞎吧>< 你的數據沒問題啊!! 繼續趕論文. 05/11 16:52
charlesdc:你的數據沒問題啦~~請仔細看 如果在意格式的話輸出時也 05/11 16:53
charlesdc:可以控制 至於怎麼寫翻一下書吧我也忘了 05/11 16:53
terryys:原來檔案裡數字都是固定格式嗎? 不是的話你可以把那些數字 05/11 21:43
terryys:都當成是字串XD 固定格式的話用f8.5應該可以,但是後頭d0要 05/11 21:45
terryys:自己加上去 05/11 21:46
suzuke:果然XD 今天本來要跟你說得就是輸出的格式可能有問題 05/11 23:27