100分白送,不要也来看看啦
jsp简单问题
小弟用的是jstl和sql2000,怎样从数据库中定义中文,然后在网页中显示出来。
比如说定义一个字段,名字 name为‘csdn‘,而使用jstl调用数据库时可以输出。
当改为中文,name 为‘名字’时,调用数据库输出就是乱码了。
定义了charset=UTF-8
name数据库中的类型为text,还是不行,小弟是初学者,大家帮帮忙啦。
------解决方案--------------------字段用中文不太好的。。。
------解决方案--------------------写个过滤器看一下,
jsp的乱码比较让人郁闷,不过一般情况下一个过滤器好像就没问题了
特殊的再转换下编码。
http://www.hmilyld.cn/read.php?419
这是以前的一个文章
------解决方案--------------------没见过数据库里表用中文的!呵呵!
------解决方案--------------------乱码问题很头疼啊,不行就用String.getBytes(),然后再new String(bytes);
------解决方案--------------------为什么要在数据库中定义字段为中文呢?
你可以在页面用文字描述啊
------解决方案--------------------数据库还是用英文的好啊,不行就过滤下啊
------解决方案--------------------在jsp页中写
<%
request.setCharacterEncoding( "gb2312 ");
response.setContentType( "text/html;charset=gb2312 ");
%>
写完这个在试试。看看好用不。
------解决方案--------------------没事,接分,帮顶
------解决方案--------------------为什么不结贴!
------解决方案--------------------同上
------解决方案--------------------初学.不是很清楚过来接分的
------解决方案--------------------关注ING
------解决方案--------------------友情接分 :)
------解决方案-------------------- <%@ page contentType= "text/html;charset=utf-8 " pageEncoding= "utf-8 " %>
<meta http-equiv= "Content-Type " content= "text/html; charset=utf-8 ">
要三處都定義utf-8!
------解决方案--------------------import
java.io.UnsupportedEncodingException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MyTool {
private MyTool(){}
private static String EMPTY_S = " ";
/*
* @param s
* @param fromCharset
* @param toCharset
* @return
*/
public static String encoding(String s,String fromCharset,String toCharset){
if(s == null || s.equals(EMPTY_S)) return s;
try{return new String(s.getBytes(fromCharset),toCharset);}
catch(Unsupported
EncodingException e){}
return s;
}///:~
/**
* ISO8859_1 换成 UTF-8
* @param s
* @return
*/
public static String encoding(String s){
return encoding(s, "ISO8859_1 ", "UTF-8 ");
}///:~
应用:
<%@ page language= "java " import= "java.util.* " pageEncoding= "UTF-8 "%>
<%@ page import= "com.faithtech.yx.MyTool " %>
String name = MyTool.encoding(request.getParameter( "name "))
建议把所有的页面字符编码改成: pageEncoding= "UTF-8 "
------解决方案--------------------顶
------解决方案--------------------