jsp实现文件下载与中文文件名乱码问题解决

调用方式: http://localhost/download.jsp?roomid=1&name=jsp上传说明.txt

 【download.jsp】//<%的前面不能有空行或者其他html代码

<%
String   roomid=request.getParameter( "roomid");
// 得到文件名字和路径
String   filename=request.getParameter( "name");
                filename=new String(filename.getBytes("iso8859-1"),"gb2312");//解决中文乱码 
String filepath = "c:\\eyesomserver2/server/webapps/root/share_files/"+roomid+"/";

// 设置响应头和下载保存的文件名
response.setContentType("APPLICATION/OCTET-STREAM");
response.setHeader("Content-Disposition",
"attachment; filename="+new String(filename.getBytes("gb2312"),"iso8859-1"));//解决中文乱码 

// 打开指定文件的流信息
java.io.FileInputStream fileInputStream =
new java.io.FileInputStream(filepath + filename);

// 写出流信息
int i;
while ((i=fileInputStream.read()) != -1) {
out.write(i);
}
fileInputStream.close();
out.close();
%>