当前位置: 技术问答>java相关
取Oracle数据库中的中文数据乱码的问题!!急:在线等待
来源: 互联网 发布时间:2015-06-20
本文导语: 我的Oracle数据库的字符集是‘ZHS16GBK’,用java写程序取出后乱码, 如:‘0xE5AFB9E585ACE4B89AE58AA1’ 我用 new String (str1.getBytes("gbk")); 转换不成功,换成new String (str1.getBytes("gb2312")); 也一样 不知什么原因?该如何解决,...
我的Oracle数据库的字符集是‘ZHS16GBK’,用java写程序取出后乱码,
如:‘0xE5AFB9E585ACE4B89AE58AA1’
我用 new String (str1.getBytes("gbk"));
转换不成功,换成new String (str1.getBytes("gb2312")); 也一样
不知什么原因?该如何解决,请各位高手赐教!
如:‘0xE5AFB9E585ACE4B89AE58AA1’
我用 new String (str1.getBytes("gbk"));
转换不成功,换成new String (str1.getBytes("gb2312")); 也一样
不知什么原因?该如何解决,请各位高手赐教!
|
换817的
包括classes12.zip和nls_charset12.zip
包括classes12.zip和nls_charset12.zip
|
请将你的java源文件加上 -encoding=GBK 重新编译,无需转码就可以了.
|
用函数先进行转换:
public String getStr(String str)
{
try
{
String temp_p=str;
byte[] temp_t=temp_p.getBytes("ISO8859-1");
String temp=new String(temp_t,"gb2312");
return temp;
}
catch(Exception e)
{
}
return "null";
}
public String getStr(String str)
{
try
{
String temp_p=str;
byte[] temp_t=temp_p.getBytes("ISO8859-1");
String temp=new String(temp_t,"gb2312");
return temp;
}
catch(Exception e)
{
}
return "null";
}