您的位置:首页 > 编程语言 > Java开发

Java文件下载代码

2013-11-08 14:40 399 查看
[align=left]public static void DownLoadFile(String filePath, String fileName,[/align]
[align=left] HttpServletResponse response) throws Exception {[/align]
[align=left] System.out.println("filepath:" + filePath);[/align]
[align=left] File file = new File(filePath);[/align]
[align=left] if (!file.exists()) {[/align]
[align=left] System.out.println("文件不存在");[/align]
[align=left] } else {[/align]
[align=left] FileInputStream fis = new FileInputStream(file);[/align]
[align=left] BufferedInputStream bis = new BufferedInputStream(fis);[/align]
[align=left] [/align]
[align=left] OutputStream os = response.getOutputStream();[/align]
[align=left] BufferedOutputStream bos = new BufferedOutputStream(os);[/align]
[align=left] [/align]
[align=left] fileName = URLEncoder.encode(fileName, "UTF-8");[/align]
[align=left] fileName = new String(fileName.getBytes("UTF-8"), "GBK");[/align]
[align=left] [/align]
[align=left] response.reset();[/align]
[align=left] response.setContentType("UTF-8");[/align]
[align=left] response.setContentType("Application/x-msdownload");[/align]
[align=left] response.setHeader("Content-Disposition", "attachment;filename="[/align]
[align=left] + fileName);[/align]
[align=left] response.setHeader("Content-Length", String[/align]
[align=left] .valueOf(bis.available()));[/align]
[align=left] [/align]
[align=left] int bytesRead = 0;[/align]
[align=left] byte[] buffer = new byte[1024];[/align]
[align=left] while ((bytesRead = bis.read(buffer)) != -1) {[/align]
[align=left] bos.write(buffer, 0, bytesRead);[/align]
[align=left] }[/align]
[align=left] bos.flush();[/align]
[align=left] bos.close();[/align]
[align=left] bis.close();[/align]
[align=left] [/align]
[align=left] os.close();[/align]
[align=left] fis.close();[/align]
[align=left] }[/align]
[align=left] }[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: