读Oracle数据,中文乱码问题
我用程序把oracle表中的字段逐条取出,然后写到文件里,中文字符全是乱码,代码如下:
======================================================================
while (rs.next()){
System.out.print( "result= "+rs.getMetaData().getColumnCount());
for(int j=1; j <=rs.getMetaData().getColumnCount(); j++){
System.out.print( rs.getObject(j)+ "|+| ");
strLine = strLine + rs.getObject(j)+ "|+| ";
}
======================================================================
导出的时候怎么转换一下编码不出乱码?请高手指点,感谢!
------解决方案--------------------1.首先:保证在数据库中保存的文字是中文的。(查看数据库中保存的记录)
2.其次:保证所输出的页面已经使其为能够显示中文的(设置其contentType)。
3.如果以上条件均符合,但仍为乱码,那么可以考虑编码转换。
oracle支持unicode,为什么不全部使用unicode呢
这样管它什么文字都可以显示了,各种文字混在都没有关系
------解决方案--------------------关注
------解决方案--------------------windows运行:regedit
HKEY_LOCAL_MACHINE\
SOFTWARE\ORACLE\NLS_LANG :AMERICAN _ AMERICA. ZHS16GBK)。
就是注册表里找到NLS_LANG,把值改为AMERICAN_AMERICA.ZHS16GBK 试下看,应该可以的。我以前解决你这样的问题就是这样的。
如果不行,改为AMERICAN_AMERICA.US7SCII 看看。