檔案處理 File handling

檔案的使用程序:開啟(open) -> 讀取(read) -> 關閉(close)

讀取檔案時,隨著讀取進行,會有指標指到檔案目前所在位置。

檔案的開啟 (open)

要使用檔案的第一步就是要開啟(open)這個檔案。

開啟一個檔案要告知:1. 檔案名稱 2.開啟模式

開啟檔案語法

f = open("檔案名稱",模式) 

開啟檔案的模式

"r"- 讀取 Read - 預設值。指標會址在開始的地方。打開一個文件進行讀取,如果文件不存在則給錯誤訊息

"a"- 附加 Append - 打開一個文件,從最後面附加資料,所以指標會址在結束的地方。如果文件不存在則建立該文件

"w"- 寫入 Write - 打開文件進行寫入,會從頭寫入而覆蓋原來內容,所以指標會址在開始的地方。如果文件不存在則建立該文件

"x"- 建立 Create - 純粹建立指定的文件,如果文件存在則回應有錯誤

"r+"- 讀取寫入二者。打開一個文件進行讀取寫入,如果文件不存在則給錯誤訊息

"w+"- 寫入與讀取二者。打開一個文件進行寫入與讀取,如果文件不存在則給錯誤訊息

"a+"- 附加 Append - 打開一個文件,從最後面附加資料,所以指標會址在結束的地方,也可以讀取資料。如果文件不存在則建立該文件

檔案是二進位的或文字模式

"t"- 文本 - 預設值。文字模式

"b"- 二進制 - 二進制模式(例如圖像)

範例的檔案模式

由 r、a、w、d 和 t、b 合併,例如:rt、rb、at、ab、wt、wb、dt、db等

f1 = open("檔案a.txt", "rt")

f2 =  open("檔案b.txt", "ab")

寫入資料到檔案中

write()  寫入資料到檔案中

writelines()  寫入List中的字串資料到檔案中

讀取文件內容 

read()讀取文件內容 所有內容

read(n)讀取文件內容的n個字

readline() 讀取文字的一行

readlines()  讀取所有行,以List 回應

for x in f 走過檔案的每一行

移動檔案指標

seek(第幾個字的位置) 

關閉檔案 close()

綜合範例