java程序从Sybase拿出数据显示中文问题? Java / Web 开发
来源:百度文库 编辑:神马文学网 时间:2024/04/27 16:56:51
java程序从Sybase拿出数据显示中文问题?
我做了一个连接Sybase数据库的程序从Sybase下拿出数据可是数据库有中文的时候拿出来就是乱码显示,该怎么解决!!
比如Mysql是在 url="jdbc:mysql://192.168.1.28/tzw?useUnicode=true&characterEncoding=GB2312";
是这样解决的,Sybase该怎么解决???请大家帮帮忙 问题点数:0、回复次数:8Top
nanman(南蛮—500万人使用的最强五笔作者)回复于 2004-07-20 10:38:28 得分 0
jdbc:sybase:Tds:localhost:4100/abc?charset=eucgbTop
TZW1212(文文)回复于 2004-07-20 10:50:22 得分 0
我想请问一下这雅芝商行 什么码?因为我在Sybase数据库里面看到的就是这个怎么把它拿出来转成正常的代码!!!!!Top
wbwb3448()回复于 2004-07-20 10:57:07 得分 0
呵呵~我正好做了JSP+SYBASE~~
public String convertStr(String str) {
String newstr = str;
try {
newstr = new String(str.getBytes("ISO-8859-1"));
}
catch (UnsupportedEncodingException uee) {
System.err.println("convert error!");
}
return newstr;
}
插入数据前对string调用convertStr(string),取数据rs.getString不需要转换~只接就能在网页上显示中文Top
TZW1212(文文)回复于 2004-07-20 13:37:14 得分 0
不用加public String convertStr(String str)刚刚我自己也试过了,直接用JSP连接Sybase显示直接出来的就是中文!我想问的是怎么把Sybase数据拿出来导入到Mysql中,不会出现想这样的<雅芝商行> 乱码!!!
我试过在数据库里面导出,和用java导出都会出现这个问题!!!
大家给点意见!Top
dawangzi16(大望子)回复于 2004-07-29 10:32:03 得分 0
在本论坛java块搜索中文 乱码 你的问题很快搞定,Top
wubai250(新版日语mp3)回复于 2004-07-29 10:48:36 得分 0
确保数据库使用中文字符集,如 eucgb, utf8, cp936, 同时, 在 jconnect 编程时设定必要的连接属性, 包括 charset (要求与数据库保持一致) 和 jconnect_version.
例如:
jconnect 4.2:
jdbc:sybase:Tds:hostname:port/dbname?charset=eucgb&jconnect_version=4
jconnect 5.2:
jdbc:sybase:Tds:hostname:port/dbname?charset=eucgb&jconnect_version=0Top
wbwb3448()回复于 2004-07-29 13:34:47 得分 0
假设sybase装在C:\sybase下
用记事本编辑C:\sybase\LOCALES\LOCALES.DAT文件,找到
....
[NT]
locale = enu, us_english, iso_1
locale = fra, french, iso_1
locale = deu, german, iso_1
locale = rus, russian, cp1251
locale = hun, us_english, cp1250
locale = ell, us_english, cp1253
locale = heb, us_english, cp1255
locale = ara, us_english, cp1256
locale = trk, us_english, cp1254
locale = esp, spanish, iso_1
locale = jpn, japanese, sjis
locale = chs, chinese, eucgb
locale = cht, tchinese, big5
; locale = kor, korean, eucksc
locale = default, us_english, cp850
.....
只要把最后一行改为locale = default, us_english, cp850 就行了
Top
cnhxjtoa(让世界充满爱得从助人为乐开始;学习是一生的课题)回复于 2004-07-30 14:45:44 得分 0
字符编码转换常用的方法是
String native_encoded = "中文字符串";
//本地编码的字符串
Byte[] byte_array = native_encoded.getBytes();
//得到本地编码的字节数组
String net_encoded = new String(native_encoded, "ISO-8859-1");
//生成ISO-8859-1编码的字符串
我做了一个连接Sybase数据库的程序从Sybase下拿出数据可是数据库有中文的时候拿出来就是乱码显示,该怎么解决!!
比如Mysql是在 url="jdbc:mysql://192.168.1.28/tzw?useUnicode=true&characterEncoding=GB2312";
是这样解决的,Sybase该怎么解决???请大家帮帮忙 问题点数:0、回复次数:8Top
nanman(南蛮—500万人使用的最强五笔作者)回复于 2004-07-20 10:38:28 得分 0
jdbc:sybase:Tds:localhost:4100/abc?charset=eucgbTop
TZW1212(文文)回复于 2004-07-20 10:50:22 得分 0
我想请问一下这雅芝商行 什么码?因为我在Sybase数据库里面看到的就是这个怎么把它拿出来转成正常的代码!!!!!Top
wbwb3448()回复于 2004-07-20 10:57:07 得分 0
呵呵~我正好做了JSP+SYBASE~~
public String convertStr(String str) {
String newstr = str;
try {
newstr = new String(str.getBytes("ISO-8859-1"));
}
catch (UnsupportedEncodingException uee) {
System.err.println("convert error!");
}
return newstr;
}
插入数据前对string调用convertStr(string),取数据rs.getString不需要转换~只接就能在网页上显示中文Top
TZW1212(文文)回复于 2004-07-20 13:37:14 得分 0
不用加public String convertStr(String str)刚刚我自己也试过了,直接用JSP连接Sybase显示直接出来的就是中文!我想问的是怎么把Sybase数据拿出来导入到Mysql中,不会出现想这样的<雅芝商行> 乱码!!!
我试过在数据库里面导出,和用java导出都会出现这个问题!!!
大家给点意见!Top
dawangzi16(大望子)回复于 2004-07-29 10:32:03 得分 0
在本论坛java块搜索中文 乱码 你的问题很快搞定,Top
wubai250(新版日语mp3)回复于 2004-07-29 10:48:36 得分 0
确保数据库使用中文字符集,如 eucgb, utf8, cp936, 同时, 在 jconnect 编程时设定必要的连接属性, 包括 charset (要求与数据库保持一致) 和 jconnect_version.
例如:
jconnect 4.2:
jdbc:sybase:Tds:hostname:port/dbname?charset=eucgb&jconnect_version=4
jconnect 5.2:
jdbc:sybase:Tds:hostname:port/dbname?charset=eucgb&jconnect_version=0Top
wbwb3448()回复于 2004-07-29 13:34:47 得分 0
假设sybase装在C:\sybase下
用记事本编辑C:\sybase\LOCALES\LOCALES.DAT文件,找到
....
[NT]
locale = enu, us_english, iso_1
locale = fra, french, iso_1
locale = deu, german, iso_1
locale = rus, russian, cp1251
locale = hun, us_english, cp1250
locale = ell, us_english, cp1253
locale = heb, us_english, cp1255
locale = ara, us_english, cp1256
locale = trk, us_english, cp1254
locale = esp, spanish, iso_1
locale = jpn, japanese, sjis
locale = chs, chinese, eucgb
locale = cht, tchinese, big5
; locale = kor, korean, eucksc
locale = default, us_english, cp850
.....
只要把最后一行改为locale = default, us_english, cp850 就行了
Top
cnhxjtoa(让世界充满爱得从助人为乐开始;学习是一生的课题)回复于 2004-07-30 14:45:44 得分 0
字符编码转换常用的方法是
String native_encoded = "中文字符串";
//本地编码的字符串
Byte[] byte_array = native_encoded.getBytes();
//得到本地编码的字节数组
String net_encoded = new String(native_encoded, "ISO-8859-1");
//生成ISO-8859-1编码的字符串
java程序从Sybase拿出数据显示中文问题? Java / Web 开发
Java Web开发构想
解决 Java 应用程序的中文显示及中文输入问题
解决linux下java程序(例如applet)中文乱码问题
Java中文&编码问题
【程序思考】RIA 对于 java 在 web 开发领域是否是一个转机? - mulder...
利用 Java Web Start发布你用java程序
基于Java的Web应用开发规范
建议初学者必读 - Java / Web 开发
java web开发从入门到精通 - Lighter is Faster - JavaEy...
中文java技术网::Java学习从入门到精通
Java中文问题及最优解决方法
Java/J2EE中文问题终极解决之道
Java中文问题详解,底层编码解剖
Java/J2EE中文问题终极解决之道
Java-J2EE中文问题终极解决之道
解决Linux下Java中文乱码问题
Java/J2EE中文问题终极解决之道
将 Java Web 应用从 Windows 移植到 AIX 时需要注意的问题
从Java谈软件开发流程
从Java谈软件开发流程
用Axis 1.1 for Java进行Web Services开发(1)
Tomcat与Java Web开发技术详解连载之三,
struts 学习园地 Java / Web 开发 - CSDN社区 community....