BBS水木清华站∶精华区
发信人: mah (chip), 信区: Java
标 题: 通过jdbc driver获取数据库中文信息揭密
发信站: BBS 水木清华站 (Tue Aug 11 20:42:16 1998) WWW-POST
当我们使用老外公司开发的jdbc第四类driver获取数据库中文信息时,常会出现乱码现象
,如????D.
解决办法1:
使用interface ResultSet的方法getBytes()得到一byte[],然后由此byte[]数组产生一
新的
String,可获得正确的汉字,但此方法有一定的局限性,在某些driver上可以实现,如
weblogic公司
开发的fastforward产品。另此种方法不规范,根据sun jdbc的标准varchar和var推荐用
getString()
方法来获取。
解决办法2:
使用interface ResultSet的方法getString(),这时我们得到的String一定是乱码,如何
解决,
String temp = result.getString (s);
if (temp != null) {
byte[] b = temp.getBytes ("8859_1");
temp = new String (b);
此时的temp一定是正确的中文,,,,,,此种方法我在sybase公司开发的jconnect4上
实验成功,在fastforward
上也成功。
敲了半天手都酸了,有兴趣的虫虫可以试试,。。。。。。。
我自横刀向天笑。。。。。。。。
谭嗣同语
--
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.38.97.197]
BBS水木清华站∶精华区