Posted on 2007-12-24 12:24
久城 閱讀(1626)
評論(1) 編輯 收藏 所屬分類:
數(shù)據(jù)庫學(xué)習(xí)
今天發(fā)現(xiàn)一個很奇怪的亂碼情況,全角波浪線的亂碼。
環(huán)境:
日文操作系統(tǒng)
oracle: NLS_LANG = JAPANESE_JAPAN.JA16SJIS
問題:
在頁面上輸入“~”,保存到數(shù)據(jù)庫中,畫面再顯示時,顯示為“?”。
在頁面上輸入其它字符均正常。
調(diào)查:
在網(wǎng)上查了一些資料,推薦
http://hi.baidu.com/niujunkai/blog/item/7ce359f3b121f9c90b46e0bf.html。
1.在頁面輸入的“~”為\uff5e,占兩個字節(jié)。
2.從頁面?zhèn)鞯絡(luò)ava中查看,“~”為\uff5e,占兩個字節(jié)。
3.存儲到oracle中,“~”為\uff5e,占兩個字節(jié)。
4.從oracle取出到j(luò)ava中查看,“~”為\u301c,占一個字節(jié)。
分析:
為什么會這樣?....
為什么從數(shù)據(jù)庫中取出就變化了呢?....不知道。
對應(yīng)辦法:
// str為從數(shù)據(jù)庫中取出的字符串
str = str.replace('\u301c', '\uff5e');
歡迎來訪!^.^!
本BLOG僅用于個人學(xué)習(xí)交流!
目的在于記錄個人成長.
所有文字均屬于個人理解.
如有錯誤,望多多指教!不勝感激!