如果沒有大量資料的存取能力,就沒有辦法完全發揮出程式得功能與電腦硬體高速運算的能力。其實檔案的存取是輸出/輸入的一種特殊情況,只是由於它特別重要,因此我們獨立出一小節專門來說明。
前面我們學過,在讀入 READ(*,*) 和寫出 WRITE(*,*) 的指令裡頭都有 ( , ),( , )的第一個空格是代表裝置,而裝置名稱在 FORTRAN 除了 * 之外只能是號碼,因此當我們要對一個儲存媒體作讀或寫之前,必須先把其檔案在程式中命名一個裝置編號,才能在 READ(□,*) 或 WRITE(□,*) 中使用到那個裝置。
設定一個編號宛如開啟一個檔案,用 OPEN 指令:
OPEN (UNIT=10,FILE='MY_DATA.DAT')
這樣就完成了開檔的工作(註:避免用號碼 5 鍵盤 , 6 螢幕 為裝置,因為古老機器有預設值)
讀,用
READ(10,*) A
或
DO I=1,100
READ (10,*) A(I)
END DO
寫,用
WRITE(10,*) B
或
DO I=1,100
WRITE (10,*) B(I)
END DO
注意:1. 對於同一個檔,不能又讀又寫。2. 若寫了一個原本存在的檔,就會把它蓋掉。 ← (test一下讀到最後用寫入一新值)
要關閉一檔案(如上例中之 unit 10),用
CLOSE(10) ← 只需要給裝置號碼就可以了,已經關閉的號碼如同變數回收,可以用同一號碼再來開另一不同名稱之檔案。
(補充:想知道輸出、輸入特定格式,請參考 FORMAT 令之用法)