操作系统:Linux7.3
服务器:resin2.1.4
数据库:Oracle8i情况一、参数设置
<% request.setCharacterEncoding("ISO-8859-1");%>
<% @page contentType="text/html;charset=GBK" %>插入数据库前的转换: new String(content.getBytes("GBK2312"),"ISO-8859-1");
数据库显示中文正常(用客户端软件)
从数据库中读出的显示转换:new String(content.getBytes("ISO-8859-1"),"GBK2312");
网页中显示中文正常情况二、参数设置
<% request.setCharacterEncoding("ISO-8859-1");%>
<% @page contentType="text/html;charset=UTF-8"%>
插入数据库前的转换: new String(content.getBytes("GBK2312"),"ISO-8859-1");
数据库显示中文乱码
从数据库中读出的显示转换:new String(content.getBytes("ISO-8859-1"),"GBK2312");
网页显示中文乱码
其它情况也试过一些,都没有成功过.
请问在使用utf-8编码情况下,在插入数据库和读取数据库时该做何变换?才能使得网页显示中文而不乱.
服务器:resin2.1.4
数据库:Oracle8i情况一、参数设置
<% request.setCharacterEncoding("ISO-8859-1");%>
<% @page contentType="text/html;charset=GBK" %>插入数据库前的转换: new String(content.getBytes("GBK2312"),"ISO-8859-1");
数据库显示中文正常(用客户端软件)
从数据库中读出的显示转换:new String(content.getBytes("ISO-8859-1"),"GBK2312");
网页中显示中文正常情况二、参数设置
<% request.setCharacterEncoding("ISO-8859-1");%>
<% @page contentType="text/html;charset=UTF-8"%>
插入数据库前的转换: new String(content.getBytes("GBK2312"),"ISO-8859-1");
数据库显示中文乱码
从数据库中读出的显示转换:new String(content.getBytes("ISO-8859-1"),"GBK2312");
网页显示中文乱码
其它情况也试过一些,都没有成功过.
请问在使用utf-8编码情况下,在插入数据库和读取数据库时该做何变换?才能使得网页显示中文而不乱.
解决方案 »
- myeclipse自动发布到tomcat,配置文件有误
- 页面无法加载ocx
- JSP批量下载可以实现么?
- EL表达式怎么写?
- 求助:关于java.sql.SQLException: Operation not allowed after ResultSet closed的问题
- 请教一个jsp页面中两个<select>传递问题
- jsp中的传值问题
- 关于enCache高级问题,请高手赐教,急急!
- 一个奇葩的问题。。
- spring 注入不了的问题
- 有兴趣的朋友过来看看,一个不用插入数据库就可以统计结果的方法?解决就把我所有的分都给.
- 本人急需支持中文文件名的jspSmartUpload一份,好心的兄弟请发一份给我!
取出的时候就把utf-8转换成gbk就行了
正确的应该是
情况一、参数设置
<% request.setCharacterEncoding("GBK");%>
<% @page contentType="text/html;charset=GBK" %>
插入数据库前的转换: new String(content.getBytes("GBK"),"ISO-8859-1");
从数据库中读出的显示转换:new String(content.getBytes("ISO-8859-1"),"GBK");
情况二、参数设置
<% request.setCharacterEncoding("utf-8");%>
<% @page contentType="text/html;charset=UTF-8"%>
插入数据库前的转换: new String(content.getBytes("utf-8"),"ISO-8859-1");
从数据库中读出的显示转换:new String(content.getBytes("ISO-8859-1"),"utf-8");
OnlyFor_love: 你的方法我刚开始就试过,没能得到我们所期望的结果.遗憾.
…………
插入前应是
new String(String.getBytes("ISO-8859-1"),"GB2312")
从数库中读取是应为
new String(String.getBytps("GB2312"),"ISO-8859-1");
我记得是这样做就没有问题吧
情况二、参数设置
<% request.setCharacterEncoding("utf-8");%>
<% @page contentType="text/html;charset=UTF-8"%>
插入数据库前的转换: new String(content.getBytes("utf-8"),"ISO-8859-1");
从数据库中读出的显示转换:new String(content.getBytes("ISO-8859-1"),"utf-8");
在页面上是可以正常显示的,之前我做过测试,但是现在有个问题是,数据库里显示乱码,当然这可能不影响用户的使用,但是问题只解决一半:
问一下,能不能做到在数据库中也显示正常.可能需要多做一些转换.确保网页中和数据库中显示都正常.
<% request.setCharacterEncoding("utf-8");%>
<% @page contentType="text/html;charset=UTF-8"%>
...
new String(content.getBytes("ISO8859-1"),"UTF-8");
...
如果写入数据库,在数据库中查询是乱码的话:
建议将你的数据库的字符集改为Unicode
<% request.setCharacterEncoding("utf-8");%>
<% @page contentType="text/html;charset=UTF-8"%>
...
new String(content.getBytes("ISO8859-1"),"UTF-8");
...
如果写入数据库,在数据库中查询是乱码的话:
建议将你的数据库的字符集改为Unicode