1. 程式人生 > 其它 >安卓逆向-安卓基礎-app介面控制元件的檢視

安卓逆向-安卓基礎-app介面控制元件的檢視

1.檔案的讀取

  open(file,mode,buffering,encoding)

  檔案的讀寫方式

  開啟方式 指標位置 讀取檔案型別
r 只讀(預設模式) 指標在檔案開頭,檔案不存在就會報錯

1. 預設讀取檔案都是ASCII編碼的文字檔案


2. 如果讀取的檔案是二進位制檔案,如圖片,視訊需要使用'rb'模式


3. 讀取非ASCII編碼的文字檔案,必須 以二進位制模式開啟,再解碼


f=open('E:/test.txt','rb')


f.read().decode('gbk')

rb 二進位制只讀 指標在檔案開頭,檔案不存在就會報錯
r+ 可讀可寫 指標在檔案開頭,檔案不存在就會報錯
rb+ 二進位制格式可讀可寫 指標在檔案開頭,檔案不存在就會報錯
w 只寫 檔案存在,則覆蓋,檔案不存在則建立
wb 二進位制格式寫 檔案存在,則覆蓋,檔案不存在則建立
w+ 可讀可寫 檔案存在,則覆蓋,檔案不存在則建立
wb+ 二進位制格式可讀可寫 檔案存在,則覆蓋,檔案不存在則建立
a 追加 檔案存在,指標在檔案尾追加;不存在,則建立
ab 二進位制格式追加 檔案存在,指標在檔案尾追加;不存在,則建立
a+ 可讀可寫 檔案存在,指標在檔案尾追加;不存在,則建立
ab+_ 二進位制格式可讀可寫 檔案存在,指標在檔案尾追加;不存在,則建立

 

 
stream.read() 將檔案中所有的內容都讀取出來。
stream.readline() 將檔案一行一行的讀取出來
stream.readable() 將檔案讀取出來,放入一個列表中
stream.readlines 判斷這個檔案是否可以被讀取,返回值為True和False



 1 stream = open(r'E:\Desktop\Desktop\Python.txt')
 2 
 3 container = stream.read()  # 將檔案中所有的內容讀出來
 4 print(container)
 5 '''
 6 hello word
 7 hello Python
 8 I am a boy
 9 '''
10 result = stream.readable() # 判斷檔案是否可以被讀取,True False 11 print(result) 12 '''True''' 13 14 line = stream.readline() # 將檔案內容一行一行的讀出來 15 print(line)
16 ''' 17 hello word 18 ''' 19 lines = stream.readlines() # 讀取檔案,將內容儲存在列表中,預設後面帶上換行 20 print(lines) 21 for i in lines: 22 print(i) 23 25 ''' 26 ['hello word\n', 'hello Python\n', 'I am a boy'] 27 hello word 28 29 hello Python 30 31 I am a boy 32 33 '''


file物件的屬性

file.read([size])        將檔案資料作為字串返回,可選引數size控制讀取的位元組數
file.readlines([size])   返回檔案中行內容的列表,size引數可選
file.write(str)          將字串寫入檔案
file.writelines(strings) 將字串序列寫入檔案
file.close()             關閉檔案
file.closed              表示檔案已經被關閉,否則為False

file.mode                Access檔案開啟時使用的訪問模式
file.encoding            檔案所使用的編碼
file.name                檔名
file.newlines            未讀取到行分隔符時為None,只有一種行分隔符時為一個字串,當檔案有多種型別的行結束符時,則為一個包含所有當前所遇到的行結束的列表
file.softspace           為0表示在輸出一資料後,要加上一個空格符,1表示不加。這個屬性一般程式設計師用不著,由程式內部使用

 

1 stream = open(r'E:\Desktop\Desktop\Python.txt', mode='w', encoding='utf-8')
2 result = stream.write(s)
3 print(result)
4 stream.writelines(['hello world\n', 'hello Tom\n', 'hello Kate\n'])
5 stream.close()

 

  複製檔案

  with open(''檔案位置) as file:

 

 

1 # with 結合 open 使用,可以幫助我們自動釋放資源
2 with open(r'E:\Desktop\Desktop\girl.jpg', 'rb') as stream:
3     container = stream.read()  # 讀取檔案內容
4 
5     with open(r'E:\girl.jpg', 'wb') as wstream:
6         wstream.write(container)
7 print('檔案複製完成!')