2010-12-14 47 views
0

我有一個MySQL數據庫,從數據庫中檢索到的php代碼,以及一個從http代碼接收php代碼輸出的Android程序。Howto display localized characters

我的本地化字符在我的程序中顯示爲問號。我在我的數據庫中嘗試了不同的字符集。 utf8_general_ci,utf8_unicode_ci,latin1_general_ci - 仍有問題標記。在html中,我可以使用代碼ø但不能在Android程序中使用 - 我不應該這樣做。

首先,這個問題來自哪裏?數據庫本身在使用utf8_顯示本地化字符時沒有問題。 Android也沒有問題。它是http發佈請求還是php有這個問題?

回答

3

我會一層一層查:

  • 即使數據庫編碼是UTF8 - 你一定值妥善保存?
  • 您是否有辦法測試API(即通過使用Web界面),如果需要的話,您將執行數據包檢查並檢查正確的UTF-8值
  • 您的PHP API是否發送正確的編碼?
  • 當讀取Android中的HTTP響應(即解析流)時,您是否提供編碼&是否正確?
+0

經過一步一步的測試,甚至沒有意義的測試,我想出了一個解決方案。將輸入流上的字符代碼設置爲ISO-8859-1(latin1)。儘管數據庫是UTF8。不知道,如果這可能以後有不明確的結果,但它現在工作。 – Espen 2010-12-18 08:50:28

+0

將XML文件中的字符編碼設置爲ISO-8859-1而非UTF對我有用 – gregm 2010-12-22 13:33:28