2011-11-30 62 views
1

我正在啓用UTF-8的數據庫中插入非英文字符。 我可以在數據庫中插入非英文字符。當我插入的URL(它穿過JSP的響應和因爲UTF8編碼設置,它的轉換成UTF8格式)在MySQL數據庫中檢索非英文字符插入值

「1」

http://heenaparekh.com/category/%E0%AA%AF%E0%AA%BE%E0%AA%A4%E0%AB%8D%E0%AA%B0%E0%AA%BE%E0%AA%AA%E0%AB%8D%E0%AA%B0%E0%AA%B5%E0%AA%BE%E0%AA%B8/

它在數據庫表中正確顯示爲

「2」

http://heenaparekh.com/category /યાતરાપરવાસ

但是,當我試圖選擇與相同的字符串的值「1」我用於在數據庫中插入(不經過請求和JSP的響應):

當select語句與鏈接一起運行爲相同的URL 「1」,通過JSP的請求將其轉換爲URL 「2」

當我要選擇這個URL行,我不能提取,因爲我不能夠轉換URL 「1」到URL 「2」在我的JSP應用我並不需要轉移到不同的頁面,所以我曾嘗試下面的方法將其轉化爲URL 「2」格式:

我已經盡字符串轉換爲UTF-8格式,但它沒有幫助。字符串被打印爲相同。當我使用Nutch的Entities類將其轉換爲UTF8格式時,它也不會提取結果,也許由於JSP和Entities類的響應的UTF8轉換不同。

請幫助我如何使兩個URL的格式相同,以便我可以從數據庫中提取它。

回答

1

您需要URL-unencode而不是「UTF-unencode」字符串。 Java內部將字符串存儲爲UTF-16,但這對您的目的無關緊要。嘗試使用java.net.URLDecoder.decode(String, String)方法。

+0

嘿,謝謝....它的工作.....我認真地浪費了很多我的時間....... URL編碼工作 – samuelhard

相關問題