遇到了一個txt日文文本,出現大面積亂碼。而且不懂日文,亂碼的話,連翻譯軟件也無法使用?!旧蠄D為測試文本】 以下的解釋與解決辦法等為自己的想法,并不一定準確。 目錄
1. 簡單的解釋 2. 如何解決 3. 附件 4. 總結
在日文操作系統中,ANSI 編碼代表的是 Shift_JIS 編碼;在簡體中文操作系統中,ANSI 編碼代表 GBK 編碼。所以我們打開一個日語環境下保存為 ANSI 編碼文本時,在中文環境下顯示會出現亂碼。日文編碼對應日文字,中文編碼應該對應的中文字【這可以解釋為什么打開的文本都是看不懂,但是確實為漢字】;日文原來的編碼以中文編碼的環境肯定顯示有問題,導致的結果就是出現亂碼。
模擬在日文環境下保存,在中文環境下顯示的過程:
① 創建一個 raw 變量,里面是一句日文。
>>>raw = '最初にお読みください''最初にお読みください'
這個操作有點像,你在文本中輸入看的懂的文字。
② 將 raw 編碼為 ansi 編碼,也就是對應日文系統下的 Shift_JIS 編碼。
>>> raw_encode = raw.encode('shift-jis')>>> raw_encodeb'x8dxc5x8fx89x82xc9x82xa8x93xc7x82xddx82xadx82xbex82xb3x82xa2'
這個操作相當于將文件以二進制形式保存在電腦上。
③ 將 raw_encode 變量以 gbk 的形式解碼【解碼與編碼是相對的】
>>> raw_encode.decode('gbk')'嵟弶偵偍撉傒偔偩偝偄'
這個操作則對應了用戶在中文環境中,打開日文環境下所保存文本時的情景,理所當然的出現了亂碼。
還原過程,當然就是反過來操作一遍
>>> raw = '嵟弶偵偍撉傒偔偩偝偄'>>> raw_encode = raw.encode('gbk')>>> raw_encode.decode('shift-jis')'最初にお読みください'
通過這樣的說明,我們就知道了背后大致的原理,那么就可以解決文本出現亂碼的情況了。 【當然這個例子是基于原來編碼是 shift-jis 編碼的,如果是別的編碼這樣操作就會出現問題】
>>> a = '''偁偺偹偣偐偄偼偠偮偼偮側偑偭偰偄傞傫偩偭偰 偩偐傜偨偲偊偼側傟偰偟傑偭偰傕傒傫側傂偲傝偠傖側偄 偨偄偣偮側傂偲偲偼偄偮傑偱傕偢偭偲偳偙偐偱偮側偑偭偰偄傞偺偝'''>>> a.encode('gbk').decode('shift-jis')'あのねせかいはじつはつながっているんだってnだからたとえはなれてしまってもみんなひとりじゃないnたいせつなひととはいつまでもずっとどこかでつながっているのさ'>>> print(a.encode('gbk').decode('shift-jis'))あのねせかいはじつはつながっているんだってだからたとえはなれてしまってもみんなひとりじゃないたいせつなひととはいつまでもずっとどこかでつながっているのさ
? 附件
隨便寫一寫,并記錄在博客中。
130887.html
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...
在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...
在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...
360修復后藍屏怎么辦?1如果您下載了軟件、補丁、插件、驅動程序等。藍屏之前,可以先卸載;如果驅動不合適,可以下載驅動向導升級驅動。2.如果電腦有木馬,可以下載Win清理助手、金山衛士、360急救箱查殺木馬。3.如果藍屏關機不是經常發生,重啟電腦試試;如果它仍然沒有 t工作,請按下F8,直到高級選項出現,放開,并選擇 "最后正確的配置 "并進入修復。4.如果它不 如果無效,請嘗試還原系統或重新安裝...
resx是什么文件,有什么用,怎么用?. resx文件是一個資源文件,由XML組成,可以添加任何資源,包括二進制文件。此外,它不能嵌入到程序集中。在系統資源命名空間中有專門用于讀寫的類。Vs.net創建此文件,然后將其轉換為.Resources文件,并根據設置將其嵌入程序集中。一般來說,它是自動生成的,不管它是什么資源文件。靜態資源,如文本和圖像,可以嵌入其中。生成應用程序或DLL時,它將附加到相...
貝因美二段奶粉價格表?貝因美1000g金裝愛2嬰兒配方奶粉300.0元貝因美500g金裝愛2嬰兒配方奶粉59.8元貝因美450g金裝愛2嬰兒配方奶粉53.9元貝因美1000g冠軍嬰兒2嬰兒成長配方奶粉218.0元貝因美900g金裝愛2嬰兒配方奶粉325.9元貝因美405g金裝愛2嬰兒配方奶粉115.5元貝因美1000g 198元貝因美405g冠軍寶貝2寶寶成長配方奶粉75.5元貝因美900g黃金...