檔案讀寫屬性

2021-10-25 06:18:02 字數 2870 閱讀 3163

file物件有自己的屬性和方法。先來看看file的屬性。(+和b可以和其他的字元組合成mode,例如rb以二進位制唯讀方式開啟,mode引數是可選的,如果沒有預設為r)

(注意:檔案開啟之後,應當被及時關閉,可以檢視f.closed屬性以確認檔案是否被關閉)

r

唯讀模式(預設,檔案不存在,則發生異常)檔案的指標將會放在檔案的開頭

w

只寫模式(可讀,檔案不存在則建立,存在則刪除內容,再開啟檔案)

a

追加模式(只能寫,檔案不存在則建立,存在則追加內容)

r+

可讀寫模式(可讀,可寫,可追加),如果檔案存在,則覆蓋當前檔案指標所在位置的字元,如原來檔案內容是"hello,world",開啟檔案後寫入"hi"則檔案內容會變成"hillo, world"

b

以二進位制方式開啟(如:ftp傳送上傳iso映象檔案,linux可忽略,windows處理二進位制檔案時需標註)

w+

先寫再讀(可讀,可寫,可追加) 如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

a+

同a(可讀可寫,檔案不存在則建立,存在則追加內容)。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。

rb

以二進位制讀方式開啟,只能讀檔案 , 如果檔案不存在,會發生異常

wb

以二進位制寫方式開啟,只能寫檔案, 如果檔案不存在,建立該檔案

ab

二進位制追寫檔案。 從檔案頂部讀取內容 從檔案底部新增內容 不存在則建立

rt

以文字讀方式開啟,只能讀檔案 , 如果檔案不存在,會發生異常

wt

以文字寫方式開啟,只能讀檔案 , 如果檔案不存在,建立該檔案。如果檔案存在。先清空,再開啟檔案

at

以文字讀寫方式開啟,只能讀檔案 , 如果檔案不存在,建立該檔案。如果檔案存在。先清空,再開啟檔案

rb+

以二進位制讀方式開啟,可以讀、寫檔案 , 如果檔案不存在,會發生異常

wb+

以二進位制寫方式開啟,可以讀、寫檔案, 如果檔案不存在,建立該檔案.如果檔案存在。先清空,再開啟檔案

ab+

追讀寫二進位制。從檔案頂部讀取內容 從檔案底部新增內容 不存在則建立

2,關閉檔案

f.close(

)

當檔案讀寫完畢後,應關閉檔案

清空檔案內容

f.truncate(

)

注意:僅當以 「r+」 「rb+」 「w」 「wb」 "wb+"等以可寫模式開啟的檔案才可以執行該功能

檔案的指標定位與查詢

1,檔案指標:

檔案被開啟後,其物件儲存在 f 中, 它會記住檔案的當前位置,以便於執行讀、寫操作,這個位置稱為檔案的指標( 乙個從檔案頭部開始計算的位元組數 long 型別 )。

2,檔案開啟時的位置:

以"r"   "r+"   "rb+" 讀方式, "w"   "w+"   "wb+"寫方式 開啟的檔案,

一開始,檔案指標均指向檔案的頭部。

3,獲取檔案指標的值:

l = f.tell(

)

4,移動檔案的指標

f.seek( 偏移量, 選項 )

選項 =0 時, 表示將檔案指標指向從檔案頭部到 "偏移量"位元組處。

選項 =1 時, 表示將檔案指標指向從檔案的當前位置,向後移動 "偏移量"位元組。

選項 =2 時, 表示將檔案指標指向從檔案的尾部,,向前移動 "偏移量"位元組。

從檔案讀取內容

1,文字檔案(以"rt"方式開啟的檔案)的讀取

s = f.readline( )

返回值: s 是字串,從檔案中讀取的一行,含行結束符。

說明: (1) 如果 len( s ) =0 表示已到檔案尾

(2) 如果是檔案的最後一行,有可能沒有行結束符

2,二進位制檔案(以"rb"、「rb+」、「wb+」 方式開啟的檔案)的讀取

s = f.read( n )

說明: (1)  如果 len( s ) =0 表示已到檔案尾

(2) 檔案讀取後,檔案的指標向後移動 len(s) 位元組。

(3)如果磁軌已壞,會發生異常。

向檔案寫入乙個字串

f.write( s ) 引數: s 要寫入的字串

說明: (1)檔案寫入後,檔案的指標向後移動 len(s) 位元組。

(2)如果磁軌已壞,或磁碟已滿會發生異常。 返回值: s 是字串,從檔案中讀取的內容

刪除檔案

import os  

os.remove(

file

)import os

os.remove(

's.txt'

)

plist屬性列表 檔案的讀寫

plist 是資料持久化的一種 是屬性列表 把陣列寫入到檔案中 1 檔案路徑 2 把資料寫入檔案 1 檔案路徑 準備寫入的資料 先找到document檔案路徑 nsarray paths nssearchpathfordirectoriesindomains nsdocumentdirectory,...

c 檔案讀寫 文字讀寫

include int main else return 0 格式 intfscanf file stream,constchar format,返回值 如果成功,該函式返回成功匹配和賦值的個數。如果到達檔案末尾或發生讀錯誤,則返回 eof 引數1 file stream 檔案指標 引數2 cons...

mysql讀寫檔案函式 讀寫檔案 檔案方法 函式

讀寫檔案 全域性申明 import codecs encodeing utf 8 開啟檔案的模式有 r,唯讀模式 預設 w,只寫模式。不可讀 不存在則建立 存在則刪除內容 a,追加模式。可讀 不存在則建立 存在則只追加內容 表示可以同時讀寫某個檔案 r 可讀寫檔案。可讀 可寫 可追加 w 寫讀 a ...