在MySql數據庫中,我有一列包含使用ISO-8859-1(latin1_swedish_ci)編碼的varchar
字符串。使用Java將MySql字符串ISO-8859-1轉換爲UTF-8
當字符串不是latin1
MySQL的存儲它,例如,作爲"à¸à¸µà¹à¸à¸."
使用Java我需要提取它,並將其轉換爲UTF-8。
你知道我該怎麼做嗎?
感謝
在MySql數據庫中,我有一列包含使用ISO-8859-1(latin1_swedish_ci)編碼的varchar
字符串。使用Java將MySql字符串ISO-8859-1轉換爲UTF-8
當字符串不是latin1
MySQL的存儲它,例如,作爲"à¸à¸µà¹à¸à¸."
使用Java我需要提取它,並將其轉換爲UTF-8。
你知道我該怎麼做嗎?
感謝
你的意思是像...
byte[] inIso_8859_1 = "à¸à¸µà¹à¸à¸.".getBytes("ISO-8859-1");
byte[] inUtf_8 = new String(inIso_8859_1, "ISO-8859-1").getBytes("UTF-8");
檢查UTF-8編碼字節
String s = new String(inUtf_8, "UTF-8");
System.out.println(s);
打印
à¸à¸µà¹à¸à¸.
謝謝! 但在某些情況下,我有一些字符沒有轉換,或者實際上...他們是,但我看到◻ 任何想法? – user1310165
您必須確保您正確顯示UTF-8。 –
小細節:MySQL的「latin1」是世界其他地方的windows-1252。 – Joni
您需要添加有關字符串來自哪裏的更多細節d你如何插入它。 –
http://stackoverflow.com/questions/652161/how-do-i-convert-between-iso-8859-1-and-utf-8-in-java – silly