2013-01-09 55 views
0

我有一個編碼爲iso-8859-1的RSS源,它會在Android中導致很多my parser問題。有時它會顯示爲格式錯誤的數據,因爲它無法正確讀取一個字節並且會過早退出。我能夠安裝在我的網絡服務器一個PHP腳本,將飼料轉換爲UTF-8:Android:將latin-1轉換爲UTF8 nativley

它的偉大工程。不過,我想讓應用程序成爲一個獨立的實體,因此無論我是否支付賬單,它都會運行。這個過程也需要明顯的速度。

有沒有一種方法可以utf-8在Android中對拉丁-1輸入流進行編碼?

回答

0

PHP和Java是完全不同的這種方式,PHP字符串是字節數組,Java字符串是真正的字符串,Java具有字節數組的獨立機制。您的PHP解決方案僅適用於RSS處於ISO-8859-1中,您可以通過使用Windows-1252來改進 ,但它仍然不適用於實際的UTF-8 RSS源。

所以你真正需要改變的是你如何解碼對Android中的字符串的響應。你還沒有顯示這個代碼。您將讀取RSS源的Content-Type標頭 ,或讀取編碼屬性或默認解碼爲Windows-1252。就像瀏覽器一樣。

+0

我使用的完整代碼是鏈接「my parser」,它實現了一個saxparser來解碼rss。 rss feed超出了我的控制範圍,所以我無法更改此端的編碼。 – Nick