小編給大家分享一下python識別文件格式的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!
創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的綏棱網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
話不多說,直接上代碼:
""" 自動識別 文本編碼格式 """ import chardet def detectCode(path): with open(path, 'rb') as file: data = file.read(20000) dicts = chardet.detect(data) return dicts["encoding"] def print_data_1(path): """ 這種編碼通過命令行 file -i 文件名獲取編碼格式, 通過測試,使用file 命令獲取的編碼格式不能獲取正確的編碼數(shù)據(jù) :param path: :return: """ with open(path, "r", encoding="iso-8859-1") as f: i = 0 for line in f: print(line) i += 1 if i == 5: break f.close() def print_data_2(path): print("-------------------------------") with open(path, "r", encoding="{0}".format(detectCode(path))) as f: i = 0 for line in f: b_line = line.encode("utf-8") # 將文件內(nèi)容轉(zhuǎn)化為utf-8格式 print(chardet.detect(b_line)['encoding']) # 輸出轉(zhuǎn)化為內(nèi)容格式 i += 1 if i == 5: break f.close() if __name__ == '__main__': path = "test.txt" print(detectCode(path)) # print_data_1(path) print_data_2(path)
看完了這篇文章,相信你對python識別文件格式的方法有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!