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