|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
这两天被如题的问题缠绕,好不轻易解决掉了 当时碰到的问题如下: sybase运行在unix上,编码未知,jsp页面显示查询数据中文乱码 pageEncoding和charset都已设置,tomcat的xml文件也已设置 已经试过的办法有: 1. String temp = rsSearch.getString(a[i]); if (temp != null) { byte[] b = temp.getBytes ("8859_1"); temp = new String(b,"GBK"); out.print(temp); } 2.String temp = rsSearch.getString(a[i]); byte[] buffer = new byte[temp.length()]; int j=0; for (int i = 0; i<temp.length(); i++) { if (temp.charAt(i)>=0x100) { char c = temp.charAt(i); byte[] buf = (""+c).getBytes(); buffer[j++] = (byte)buf[0]; buffer[j++] = (byte)buf[1]; } else { buffer[j++] = (byte)temp.charAt(i); } } temp= new String(buffer, 0, j); 为什么这些用在mysql等数据库就有效的方式用在sybase上就无效 原因是sybase的连接跟其它jdbc连数据库有不同,需在连接时注明属性,dbURL 设为 jdbc:sybase:Tds:hostname:port/dbname?charset=eucgb&jconnect_version=4 ,比如我的数据库charset=cp850 ,jconnect_version=3根据自己的情况适当更改就可以了 另外,在jsp页面需要用到我最开始提到的方式1,至此,中文问题得到解决! 返回类别: 教程 上一教程: JDBC和ODBC 下一教程: JDBCTM 指南:入门7-CALLABLESTATEMENT 您可以阅读与"JSP连接SYBASE数据库中文显示问题终极解决办法"相关的教程: · MYSQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解决方式总结 · 解决JSP中文显示问题的几个方式 · Javamail中的常见中文乱码问题与解决办法(综合) · 新手请教jsp连接数据库的问题 · 在JSP程序读取或向DB写入数据乱码解决办法 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |