字符在转换为ISO-8859-1字符集时可能会遭到破坏
来源:互联网 发布:巨人网络收购alpha 编辑:程序博客网 时间:2024/06/03 19:05
一、问题
将外部代码拷贝到jsp文件中,保存时报以下警告:
list.jsp中包含的字符在转换为ISO-8859-1字符集时可能会遭到破坏。是否要使用此字符集来保存文件?
解决方法:
在jsp文件的开始加上下面代码:
<%@ page contentType="text/html; charset=UTF-8" %>再保存时就不会有警告了。
二、页面字符集转换
jsp中通常需要在第一行放置如下代码:
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page contentType="text/html; charset=GB2312" %>
该行代码的作用是告诉jsp引擎(如tomcat、resin等),本页面使用的字符集是GB2312。如果jsp页面中包含有汉字,一定要包含本行代码。否则jsp引擎使用默认的字符集(通常为utf-8),这可能会导致jsp输出页面乱码。
同时jsp输出页面的字符集为GB2312,如果要按其他字符集输出,只需使用:
response.setContentType("页面类型");
例如:wap中通常要求页面按utf-8输出,只需把response的ContentType设置为utf-8即可,设置语句为:
response.setContentType("text/html; charset=utf-8");
jsp引擎会自动把输出的页面转换成指定的字符集。
三、参数值字符集转换response.setContentType("页面类型");
例如:wap中通常要求页面按utf-8输出,只需把response的ContentType设置为utf-8即可,设置语句为:
response.setContentType("text/html; charset=utf-8");
jsp引擎会自动把输出的页面转换成指定的字符集。
在jsp中,可以使用request.getParameter("参数名")获得参数值,参数值的默认字符集是ISO8859_1,如果不进行字符集转换,将导致汉字乱码。
可以采用《jsp样本代码》中的做法:
String szUserName = request.getParameter("username");
szUserName = new String(szUserName.getBytes("ISO8859_1"), "GB2312");
String szUserName = request.getParameter("username");
szUserName = new String(szUserName.getBytes("ISO8859_1"), "GB2312");
这种做法的缺点可能会包含汉字的参数值都需要转换,容易遗漏,代码量也相应增加了。
另外一个简便的方式是:在获取参数前,调用:
request.setCharacterEncoding("GB2312");
该语句的作用是告诉jsp引擎,页面参数采用的是中文编码,由jsp引擎自动完成字符集转换。然后,程序中直接调用request.getParameter("参数名")即可获得参数值,不需要再次进行字符集转换
request.setCharacterEncoding("GB2312");
该语句的作用是告诉jsp引擎,页面参数采用的是中文编码,由jsp引擎自动完成字符集转换。然后,程序中直接调用request.getParameter("参数名")即可获得参数值,不需要再次进行字符集转换
0 0
- 字符在转换为ISO-8859-1字符集时可能会遭到破坏
- MYSQL数据库字符集转换由iso-8859-1转gbk
- 为什么用iso-8859-1来转换字符集
- Zen Cart 改 iso-8859-1字符集为 utf-8
- 可以在html中使用的特殊字符-ISO Latin-1字符集---换行等操作符
- C#字串与ISO-8859-1字符互相转换方法
- 各种ISO 8859字符集
- ISO Latin-1字符集
- ISO Latin-1字符集
- ISO Latin-1字符集
- ISO Latin-1字符集
- ISO Latin-1字符集
- ISO Latin-1字符集
- ISO Latin-1字符集
- ISO Latin-1字符集
- jsp中url传参中文参数在字符集转换后仍然有部分字符为问号的情况解决。
- 编码转换:怎样将 GB2312 编码的字符串转换为 ISO-8859-1 编码的字符串?
- ISO 8859 语言字符集详解
- 线性回归模型
- keepalived+httpd+tomcat实现高可用负载均衡
- ThreadLocal用法和实现原理
- 基本排序算法之冒泡排序
- Javascript MVC 学习笔记(二) 控制器和状态
- 字符在转换为ISO-8859-1字符集时可能会遭到破坏
- pig 编程指南笔记
- 生活感悟_1
- 真的有必要写好技术博客
- Integer to Roman
- sphinx 的问题整理
- 36、Linux-dd命令详解
- eclipse设置黑色主题
- Web—CSS概述