System.out.println("downloaded filename is "+filename);//这里输出的文件名是好好的
response.setContentType("application/msword;charset=GB2312");
response.setHeader("Content-disposition", "attachment;filename="+ filename);
以上就是我的response的设置,但是在下载word文档的弹出框里的文件名却是乱码,请问这是为什么?
response.setContentType("application/msword;charset=GB2312");
response.setHeader("Content-disposition", "attachment;filename="+ filename);
以上就是我的response的设置,但是在下载word文档的弹出框里的文件名却是乱码,请问这是为什么?
解决方案 »
- Spring security 问题 所有的访问页面都被拦截了!不管有没有权限!
- ●●●在线等 spring提示和我配置不符,我该怎么办?●●●
- 请教servlet环境变量配置问题
- Struts项目启动失败问题求助!
- 关于Spring 用注解实现事务。
- 日期比较求教
- 为什么我用String array[]=request.getParameterValues("checkgroup");接受不到checkbox数组??????
- jsp问题(三)?
- 寻求志同道合者----组建JSP联盟!
- org.apache.thrift.transport.TTransportException:http response code 400如何解决
- 你们能帮我推荐一个好的加密算法吗?
- struts修改页面的问题,请进
给你一个我写的方法:
public static String toUtf8String(String str) throws Exception
{
String result = "";
StringBuffer sb = new StringBuffer();
for (int i=0;i<str.length();i++)
{
char c = str.charAt(i);
if (c >= 0 && c <= 255)//若不是汉字则不进行编码转换
{
sb.append(c);
}
else
{
byte[] bb;
try
{
bb = Character.toString(c).getBytes("utf-8");//编码转换
}
catch (Exception ex)
{
System.out.println(ex);
bb = new byte[0];
}
for (int j = 0; j < bb.length; j++)
{
int k = bb[j];
if (k < 0) k += 256;
sb.append("%" + Integer.toHexString(k).toUpperCase());
}
}
}
result = sb.toString();
return result;
}