2012-04-20 47 views
2

我使用java library用語言檢測日語的一個問題:日語檢測用java langdetect庫

使用日文文字,我想,以檢測它的文字語言,但不是預期的「JA」我「恩」。有沒有人看到過這個問題?

預期產量是多少?

[ja:0.9999952022259697] 

你看到了什麼呢?在附件的日文文字

[en:0.9999952022259697] 

原始問題的描述,你可以找到here

+0

是你的確認文件包含日本?無論如何,它是什麼編碼?我嘗試將它解釋爲EUC-JP,SJIS,UTF-16以及各種非日文編碼。到目前爲止,我無法看到任何日文文本。這可能是一些二進制數據轉儲? – jogojapan 2012-04-20 14:38:04

回答

1

這是幾乎可以肯定與輸入文件的編碼問題(如果該文件包含日語的 - 我不是說服它)。

鏈接的Java庫根據文檔假定輸入是作爲String對象給出的。這意味着它假定編碼已被正確猜測和輸入字節序列已被轉換爲Java字符串。

當您使用庫時,您必須確保是這種情況,即如果您在處理未知編碼中的文本(例如日語EUC-JP或SJIS),則必須先檢測編碼並將其轉換字符串正確。

(由於這些原因,良好的語言探測器能夠探測到的編碼語言的同時,通過使用語言和編碼特定的內部字典。)

+0

嗨jogojapan,謝謝你的回答。你在文件編碼方面絕對正確。我將這個文件保存爲UTF8,問題消失了。 – 2012-04-20 21:48:43