如果文件名为中文名,需要经过URLEncoder将文件名编码
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String path = this.getServletContext().getRealPath("/download/图片.jpg");
String filename = path.substring(path.lastIndexOf("\\")+1);
//下载文件为中文文件,需要经过url编码
response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode(filename,"UTF-8"));
InputStream in =new FileInputStream(path);
OutputStream out = response.getOutputStream();
int len = 0;
byte buffer[] = new byte[1024];
while((len=in.read(buffer))>0)
{
out.write(buffer,0,len);
}
}