2011-11-24 68 views
2

在我的swing應用程序中,我將顯示來自數據庫的hindi unicode字符。 當我顯示名稱時,它顯示爲原樣,而不是作爲印地語字符串。ResultSet getString字符編碼的Unicode字符

但是當我將它硬編碼到程序中時,它顯示正確。問題是什麼。從數據庫獲取數據時是否有任何字符編碼選項?我正在使用Netbeans的oracle xe。

String name = rs.getString("name"); 
    jLabel1.setText(name); 

在這裏,它顯示unicode文字記錄器,因爲它是。 但是這裏

String name = "\u0938\u093e\u092e\u093e\u0928\u094d\u092f"; 
    jLabel1.setText(name); 

它顯示正確。哪裏有問題。

回答

2

問題在於Oracle正在使用的編碼。您必須將其設置爲在數據庫中使用UTF-8。不幸的是,你不能在JDBC類中解決這個問題。