JDBC中的中文處理
關鍵字:JDBC JDBC中的中文處理 我們在做一個JAVA的應用,不可避免地要處理中文。經過艱苦的探索,目前有一些進展,找到了一些解決方法,但仍然面臨著無法解決的問題。在此作一整理,希望對大家有所幫助,同時請各位高手幫忙考慮我們的問題。 背景: JDK 1.1
關鍵字:JDBC
JDBC中的中文處理
我們在做一個JAVA的應用,不可避免地要處理中文。經過艱苦的探索,目前有一些進展,找到了一些解決方法,但仍然面臨著無法解決的問題。在此作一整理,希望對大家有所幫助,同時請各位高手幫忙考慮我們的問題。
背景:
JDK 1.15
VCafe 2.0
JPadPro
SERVER:
NT IIS
Sybase System 10
JDBC: Jconnect
CLIENT:
Browser: Netscape 4.04 + Patch
PWin95 & Pwin98 Beta3
CLASS文件存放在 SERVER,由BROWSER 運行APPLET,APPLET只起調入FRAME類主程序的作用。界面包括Text field, Text Area,List, Choice 等。
一,取中文
用JDBC執行SELECT語句從SERVER取數據(中文)后,將數據用APPEND方法加到TEXT AREA(TA),不能正確顯示。但加到LIST中時,則大部分漢字可正確顯示。
處理:將數據按“ISO-8859-1”格式轉為字節數組,再按系統缺省編碼格式(default character encoding)轉為STRING,即可在TA和LIST中正確顯示。
程序段如下:
dbstr2 = results.getString(1);
//*********************************************************************
// After read result from Database server, Convert the result string.
dbbyte1 = dbstr2.getBytes("iso-8859-1");
dbstr1 = new String(dbbyte1);
//*********************************************************************
二,寫中文到DB
處理方式與以上相逆,先將
SQL語句按DEFAULT CHARACTER ENCODING轉為字節數組,再按ISO-8859-1轉為STRING,然后送執行,則中文信息可正確寫入DB。
sqlstmt = tf_input.getText();
原文轉自:http://www.anti-gravitydesign.com