关于从库中读取信息的编码问题 request.setCharacterEncoding("GBK"); response.setContentType("text/html;charset=GBK"); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是因为在JSP中显示中文有一个转码问题,可以设置中文显示方式.设置<%@ page contentType="text/html;charset=GBK"%>我在JB中是用parame=new String(parame.getBytes("ISO8859_1"),"GB2312");进行显示设置的! <%@ page contentType="text/html; charset=gb2312" %> TOMCAT的话用parame=new String(parame.getBytes("ISO8859_1"),"GB2312");RESIN只要加上<%@ page contentType="text/html;charset=GBK"%> 楼上说的对tomcat存入数据库之用parame=new String(parame.getBytes("ISO8859_1"),"GB2312");Resin就简单多了只需加上:RESIN只要加上<%@ page contentType="text/html;charset=GBK"%> 我用的是weblogic,而且像new String(~.getBytes("ISO8859_1"),"GB2312")的方法都试过了,中文显示没有问题,可是"——"显示有问题。而且我也加了<%@ page contentType="text/html;charset=GBK"%> 我用的是oracle+weblogic 数据库中字段存的是“标题——”,如果直接String info_title=rs1.getString("info_title");//信息标题 那么info_title显示的是“标题??”如果进行了info_title=new String(info_title.getBytes("ISO8859_1"),"GB2312");转换,那么info_title显示的是“????”文件顶加了<%@ page contentType="text/html;charset=gb2312" %>语句。怎么样才能让“标题——”正确显示出来呢?上面所有的方法我都试过了,还是显示有问题,请大虾指点! public String getChinese(String str) { String tmp = ""; try { byte[] by = str.getBytes("ISO-8859-1"); tmp = new String(by); } catch (Exception e) { } return tmp; } 数据在写入数据库前使用str=new String(string.getBytes("ISO8859_1"));在把数据提出来显示在JSP上时,在页面的头上加<%@ page contentType="text/html;charset=gb2312" %>就行了。 还是不行,用了byte[] by = str.getBytes("ISO-8859-1");tmp = new String(by);后“标题——”显示成“????”了 我是把写入数据库封装在javabean中String tmp=new String(string.getBytes("ISO8859_1"));tmp写入数据库后显示正常,不会是????提取是页面加<%@ page contentType="text/html;charset=gb2312" %>数据显示正常。楼主再试试,我这里操作是正常的,你把具体的语句再贴出来看看。 <%@ page contentType="text/html;charset=gb2312" %>在用我的那个getChinese就行了 如果数据在写入数据库前使用str=new String(string.getBytes("ISO8859_1")),那么数据库中存的值就是乱码--> ??我的数据库是oracle中文数据库 oracle下就不太清楚了,我用的是MSSQL 你们说的是中文字符显示的问题,我这里中文字符显示没有问题,而是破折号“——”显示有问题,成了“??”你们可以在库中改条记录,看取出来是什么。to camel4057(骆驼) 我用了你的方法,库中记录是“标题——”,如果直接取getString(字段名)不进行转换,那么取出的是“标题??”,如果用byte[] by = str.getBytes("ISO-8859-1");tmp = new String(by);方法进行转换后,那么取出的是“????”另注:我在前面已经加上<%@ page contentType="text/html;charset=gb2312" %>了。kengzai(芒果老公) 如果数据在写入数据库前使用str=new String(string.getBytes("ISO8859_1")),那么数据库中存的值就是乱码--> ?? 另注:我的数据库是oracle中文数据库 求助,应该是汉字编码问题吧。 MyEclipse编译的毛病 struts的jsp页面的问题 java.lang.NoSuchMethodError: 请问如何用jsp上传图片加水印 谁有bbs的数据库设计啊 初学jsp开发! 如何设置多行文本框的行高 jboss3.0+rhlinux8.0+mysql下的中文问题 我想讲复选框的值传到后台 变成字符串可是不行 求帮忙看看 jsp中如何实现快速数据库记录分页显示 高手,请帮帮我!帮我看看这个javabean这么写对不对,谢谢!
设置<%@ page contentType="text/html;charset=GBK"%>
我在JB中是用parame=new String(parame.getBytes("ISO8859_1"),"GB2312");进行显示设置的!
RESIN只要加上<%@ page contentType="text/html;charset=GBK"%>
如果进行了info_title=new String(info_title.getBytes("ISO8859_1"),"GB2312");转换,那么info_title显示的是“????”
文件顶加了<%@ page contentType="text/html;charset=gb2312" %>语句。
怎么样才能让“标题——”正确显示出来呢?上面所有的方法我都试过了,还是显示有问题,请大虾指点!
{
String tmp = "";
try {
byte[] by = str.getBytes("ISO-8859-1");
tmp = new String(by);
}
catch (Exception e) { }
return tmp;
}
在把数据提出来显示在JSP上时,在页面的头上加
<%@ page contentType="text/html;charset=gb2312" %>
就行了。
String tmp=new String(string.getBytes("ISO8859_1"));
tmp写入数据库后显示正常,不会是????
提取是页面加<%@ page contentType="text/html;charset=gb2312" %>数据显示正常。
楼主再试试,我这里操作是正常的,你把具体的语句再贴出来看看。
在用我的那个getChinese就行了
我的数据库是oracle中文数据库
to camel4057(骆驼)
我用了你的方法,库中记录是“标题——”,如果直接取getString(字段名)不进行转换,那么取出的是“标题??”,如果用byte[] by = str.getBytes("ISO-8859-1");tmp = new String(by);方法进行转换后,那么取出的是“????”另注:我在前面已经加上<%@ page contentType="text/html;charset=gb2312" %>了。
kengzai(芒果老公)
如果数据在写入数据库前使用str=new String(string.getBytes("ISO8859_1")),那么数据库中存的值就是乱码--> ?? 另注:我的数据库是oracle中文数据库