问题描述
- 关于JSp中表单内容提交后的乱码的问题
-
这是我开头的设置
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
中间又写了
<%request.setCharacterEncoding("GBK");%>//防止乱码
最后一部分代码是
<%
Scanner scan=new Scanner(new FileInputStream(file),"GBK");
scan.useDelimiter("n");
StringBuffer buf=new StringBuffer();
while(scan.hasNext())
{
buf.append(scan.next()).append("
");
}
scan.close();
%>
<%=buf%>
其中file文件,保存了表单提交后的信息,file文件中的信息没有乱码
全程设置为GBK,就是为了防止出现乱码·,结果数据读取,buf居然还是乱码
请高人指教····
解决方案
写在jsp文件中
<%@ page contentType="text/html;charset=GBK"%>
只对post有效.
request.setCharacterEncoding("gbk");该代码一般放在最前面.
上面这行代码只能getParameter()前设置,否则此代码无效.
解决方案二:
我记得tomcat里的配置文件,也有一个修改字符集的地方
时间: 2025-01-29 15:00:48