国际化的需求,文字格式最好为UTF-8.
关于文字的设置,我的一些总结。
1.jsp文件 正常显示utf-8字符
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> ,每个页面都要加上这句话,该页面能正常显示utf-8编码的字符。
2.jsp文件有输入文字框, severlet文件
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8"); 加入这两句能确保输入汉字或其他非英语字符集能正常保存为UTF-8编码。
3.URL中带有中文字符
<a href="addform.jsp?...&name=<%=URLEncoder.encode(“中文名字”,"UTF-8")%>&...</a>
4.html文件
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
.........
</html>
5.Java代码
主要是String的处理,其它对象可以不处理,不会有改变。
String类会默认使用file.encoding作为编码,会出现错误。set default file.encoding 为UTF-8,可能解决问题,但是有时候有问题。现在我的办法是把涉及到String的时候,编码方式改为ISO-8859-1,如果你有很好的方法,可以给我留言。