天天看點

seek()對中文偏移測試

目前目錄下建立“中文測試.txt”檔案,寫入:

我是大好人aaa
我是大壞人bbb      
f = open('中文測試.txt', 'r+', encoding='utf-8')
# f.write('我是大好人aaa\n')
# f.write('我是大壞人bbb')
f.seek(0)
print(f.read())
f.seek(0)
print(len(f.read()))     # 文字包括\n的個數,總計10個漢字,6個字母和一個換行符\n,共17個
print(f.tell())    # 指針共計,每個漢字3位,每個字母或者數字1位,換行符有\r\n兩個,共計38個
print(f.read())    # 是以對于有中文的檔案,要看準了修改seek(),如果中文沒有改3的倍數,卡到中間
f.close()        # 就會出錯或者亂碼(在資料編碼中可以使用忽略無法編碼以及解碼的關鍵字參數)