日期:2014-05-17 浏览次数:20711 次
String path=request.getParameter("path");
if(path!=null){
path=CommonUtil.getNewString(path);//处理中文乱码
CommonUtil.getNewString(path);//处理中文乱码
//path=new String(path.getBytes("ISO-8859-1"),"UTF-8");
System.out.println(path);
}
//得到要下载文件的真实路径
String realPath=this.getServletContext().getRealPath(path);
System.out.println(realPath);
//创建要下载的文件对象
//DownLoadUtil.downLoadFile(realPath, response);
File file=new File(realPath);
//获得文件名
String fileName=file.getName();
//获得文件后缀
String ext=FileUtil.getFileType(fileName);
System.out.println(ext);
//解决下载时文件名中文乱码问题
fileName=URLEncoder.encode(fileName,"utf-8");
System.out.println(fileName);
//判断文件是否存在
if (file.exists()) {
System.out.println("*********************************");
// FileInputStream inStream = new FileInputStream(file);
// ServletOutputStream servletOS = response.getOutputStream();
// response.reset();
// response.setContentType("application/x-msdownload");
// response.setHeader("Content-Disposition","attachment; filename=\"" + fileName + "\"");
//
////
// int fileLength = (int) file.length();
// response.setContentLength(fileLength);
// /* 如果文件长度大于0 */
// if (fileLength != 0) {
// /* 创建输入流 */
////
// byte[] buf = new byte[4096];
// /* 创建输出流 */
//
// int readLength;
// while (((readLength = inStream.read(buf)) !=-1)) {
// servletOS.write(buf, 0, readLength);
// }
// inStream.close();
// servletOS.flush();
// &