我有一个servlet,它从Oracle数据库中检索数据。数据库中的编码是Latin1。以下代码适用于浏览器:
resp.setCharacterEncoding("ISO-8859-1");
resp.getWriter().write(result);
但我需要能够返回UTF-8,如下所示:
utfResult = ???;
resp.setCharacterEncoding("UTF-8");
resp.getWriter().write(utfResult);
为了达到这个目的,我尝试了很多语法,但都没有。
系统是Java 7上的Tomcat 7.感谢您的支持。
要回答更详细的请求:
对于第一个版本,所有字符在浏览器中都显示正常,但在使用数据的NodeJS程序中没有。
当我用resp.setCharacterEncoding("ISO-8859-1");
替换resp.setCharacterEncoding("UTF-8");
时,字符öäüèéà被替换为?
答案 0 :(得分:0)
Java String
已经是Unicode文本。所以唯一的问题可能是从数据库读取可能出错了。检查一下。