我解析新聞來自超過10種不同的語言飼料。如何從多種語言讀取數據時避免垃圾/垃圾字符?
所有的解析工作都是在java中完成的,數據存儲在MySQL中,然後我的API用PHP編寫了響應客戶端。
我在閱讀數據時經常遇到垃圾字符。
有什麼我想:
- 我configured my MySQL存儲UTF-8數據。我的數據庫,表甚至列都有UTF8作爲默認字符集。
- 雖然連接我的數據庫,我設置了character set results as utf-8
當我手動運行jar文件中插入數據時,人物的出現很好。但是當我爲同一個jar文件設置一個cronjob時,我開始再次面對這個問題。
在英語中,我特別面臨諸如this和其他地方語言的問題,該字符看起來完全是垃圾,我甚至無法識別單個字符。
有什麼,我失蹤?
樣品亂碼:
古吉特拉:「ર的«‡àª²àªμેમà«àª¸àª¾àª«àª°的«€àª®àª¾àª,સામાન ચà«<ર的«€àª¥àª¶à«‡àª¤à«<મળશેàªμળતર!」
Malyalam:「à'¨àμ‡à'ªàμà'ªà'¾à'³à'¿à'²àμ‡A'•àμà'•àμà'³àμà'³A'•Aμ<à'³àμâ€à '¨à'¿à'°A'•àμà'•AμA'•àμà'±à'šàμà'šàμ」
英語:銀行董事會Bureau’的範圍擴大到金融行業事業單位
jar文件如何彙編它插入數據庫的數據?通過stdin?通過文件? – Siguza
如果您需要特定幫助,您需要顯示一些代碼。 – jtahlborn
這裏猜測,但系統默認代碼頁(由「cron」拾取)可能是「C」。即普通的舊式ASCII。把你的java包裝在一個設置環境「LANG = UTF-8」的腳本中。或者在你的java代碼中顯式地打開UTF-8文件。 –