回答
首先,「醜無炭箱」可能不是一個編碼的問題,他們可能只是一個沒有安裝字體的標誌,可以在頁面中顯示字形。
當字符串從一個系統傳遞到另一個系統時,大多數字符編碼問題都會發生。對於web應用程序,這通常在瀏覽器和應用程序之間,應用程序和文件系統之間以及應用程序和數據庫之間。
因此,您需要檢查錯誤編碼的數據來自哪裏,它在源處具有何種字符編碼,以及它正在接收哪種編碼。最好的方法是發送你知道系統有問題的角色,並在應用程序的每個級別檢查它們。他們在應用程序內看起來像什麼?在數據庫中?當你從數據庫中取回它們時?當他們顯示在瀏覽器中時?
對不起,這樣一般,但問題沒有給予更多的工作。
將數據重定向到磁盤並使用Hex Editor。大多數文本編輯/觀衆在幕後進行自己的轉換,因此很難確定您看到的數據是真實的。
如果您發送給瀏覽器的數據發生了損壞(moji-bake),您將收到垃圾字符。另外,如果你在你的META頭文件中指定了錯誤的字符集,你的瀏覽器將錯誤地渲染頁面,導致頁面再次出現moji烘烤,有時候會在頁面的隨機位置。
當處理CJK字符集,你一定要確保使用整個程序的生命週期UTF8字符編碼(數據存儲,檢索,數據在你的代碼操作,在browsser等顯示...)
什麼是UTF8? UTF8處理二進制數據流,而不是字符串。這意味着位組合可以具有可變長度。 ASCII字符的固定長度爲8位,代表1個字節,但UTF8字符可以由6位,8位,12位等組成。因此,UTF8容易出現日文稱爲「mojibake」的情況。作爲一個編碼器,從數據庫到代碼庫到瀏覽器,你應該儘量使用UTF8。對於電子郵件,您可以使用UTF8,但您可能會發現大多數郵件服務器和客戶端仍舊舊,並使用不同字符集(例如ISO9022X)的混雜信息。
數據庫設置 如果你是一個mysql用戶,然後確保你必須確保到數據庫使用UTF8所有連接,所有表/字段使用UTF8。默認情況下,mysql使用拉丁語(瑞典語)字符集。那些奇怪的幽靈喜歡他們的幽默感!
檢查你的代碼 以我的經驗編輯器如記事本++,的Notepad2,用UltraEdit,電子,等等都有UTF8支持問題。他們主要工作,但由於他們的開發人員本身不使用CJK語言,他們不完善。像關閉物料清單(字節順序標記),損壞的標籤,糟糕的字符集轉換等問題......都存在問題。
我強烈建議使用像Maruo這樣經過驗證的UTF8編輯器。這是由一家日本公司製作的,但有英文版本(和試用版)http://www.hidemaru.interlink.or.jp/software/
最後,您可能需要將源文件轉換爲UTF8。特別是如果代碼庫本身包含CJK語言字符串。
操縱字符串 任何字符串函數都需要多字節安全。注意我沒有說雙字節。 UTF8不是雙字節,而是多字節,取決於用於表示字符的總位數。在PHP中,你需要專門調用MB字符串函數。 Ruby和其他語言具有更透明的支持,但您需要檢查文檔以瞭解應用程序服務器的風格!
META標籤 查看google.co.jp或yahoo.co.jp的META標頭。這些網站知道如何正確使用它。主要包括以下META標記的doucment <HEAD>
< META HTTP-當量= 「內容類型」 CONTENT = 「text/html的;字符集= UTF-8」 >
它通常是安全的混合英文HTML文件類型屬性也具有上述字符。因此,添加上面的META標籤似乎適用於HTML文檔:
< html xmlns =「http://www.w3.org/1999/xhtml」xml:lang =「en」lang =「en 「>
電子郵件 這是一個完全不同的罐蠕蟲。 UTF8的工作很多,但許多日本老年客戶更多地使用ISO2022X。這不值得在這裏介紹。
調試UTF8問題 一旦你有一個可靠的UTF8編輯器,比如丸尾,你可以創建靜態頁面和解決您的問題。
希望幫助
- 1. 如何解決Emacs,mathematica.el和Mathematica 10的字符編碼問題?
- 2. 如何解決這個字符編碼問題?
- 3. 如何解決硬編碼字符串的這個問題?
- 4. 如何解決Python的硬編碼字典編碼問題
- 5. 如何解決chraracter編碼問題
- 6. 如何解決編碼問題?
- 7. 編碼問題如何解決它
- 8. MimeKit字符編碼/解碼問題
- 9. org.json字符編碼/解碼問題
- 10. 解決Rails中的URI字符編碼問題
- 11. 問題與編碼,我該如何解決這個問題?
- 12. 字符串編碼/解碼問題 - 從結尾丟失字符
- 13. Base64編碼/解碼問題:解碼後的字符串是'?'
- 14. 如何解決地址編碼和解碼的問題與一些特殊字符和數字
- 15. 如何解決IronPython編譯()問題?
- 16. 字符編碼問題
- 17. 字符串編碼問題
- 18. json字符編碼問題
- 19. 字符編碼問題PHP
- 20. Tomcat字符編碼問題
- 21. 字符編碼問題
- 22. 字符串編碼問題
- 23. 字符集編碼問題
- 24. htaccess字符編碼問題
- 25. PHP字符編碼問題
- 26. .NET字符編碼問題
- 27. Ruby字符編碼問題
- 28. 字符編碼問題 - GB2312
- 29. Python:字符編碼問題
- 30. fckeditor字符編碼問題
同時確保應用程序(控制檯,編輯,網頁),您正在收看的字符被正確配置,以顯示預期的字符集。 – 2009-05-28 07:02:34