java 乱码问题

来源:百度知道 编辑:UC知道 时间:2024/05/31 04:12:36
在jsp网页中做个超链接,链接本地的一个文件,文件名中带中文的话,链接就会报错,如何解决啊,

config/server.xml文件中 的encoding 设为gb2312了
jsp第一行定义编码格式并且导入包
<%@ page language="java" pageEncoding="gb2312" import="java.net.URLEncoder" %>

url编码转换
<%
String addr = URLEncoder.encode("文件名","gb2312");
%>

这样用:
<%=addr%>
这种方法我也试过,可是我得到的addr也是乱码,我要把文件名转换为utf-8的

上面说的有点啰嗦了,其实就是路径中带了中文了

page language="java" pageEncoding="gb2312" pageEncoding改成utf-8

在ie里边设置中把以utf-8格式发送得挑打掉就可以了

设置server.xml中的Connector熟悉URIEncoding="gb2312",确保解码格式与编码格式统一

String s=new String(s.getBytes("gb2312"),"ISO-8859-1"); 这种方法试过了吗?

应该是jsp编码的问题。看下jsp的编码

jsp第一行定义编码格式并且导入包
<%@ page language="java" pageEncoding="gb2312" import="java.net.URLEncoder" %>

url编码转换
<%
String addr = URLEncoder.encode("文件名","gb2312");
%>

这样用:
<%=addr%>

<%@ page language="java" pageEncoding="gb2312" import="java.net.URLEncoder" %>

url编码转换
<%
String addr = URLEncoder.encode("文件名","gb2312");
%>

这样用:
<%=addr%>