在工作中遇到的一个下载文件的功能,自己将其抽取出来,代码简单,希望能帮到大家,好了,话不多说,上代码!
public void downloadFile(File file, String downName, HttpServletRequest request, HttpServletResponse response) { OutputStream out = null; FileInputStream fin = null; BufferedInputStream bin = null; try { if (file.exists()) { String finalFileName = null; String agent = request.getHeader(\"User-Agent\"); boolean isMSIE = (agent != null && agent.indexOf(\"MSIE\") != -1); if (isMSIE) { finalFileName = URLEncoder.encode(downName, \"UTF8\"); } else { finalFileName = new String(downName.getBytes(\"UTF-8\"), \"ISO-8859-1\"); } response.setContentType(\"application/x-msdownload\"); response.setHeader(\"Content-Disposition\", \"attachment; filename=\".concat(finalFileName)); out = response.getOutputStream(); fin = new FileInputStream(file); bin = new BufferedInputStream(fin); for (int data = bin.read(); data > -1; data = bin.read()) { out.write(data); } } else { } } catch (Exception e) { e.printStackTrace(); } finally { try { if (bin != null) bin.close(); if (fin != null) fin.close(); if (out != null) out.close(); } catch (Exception e2) { e2.printStackTrace(); } } }
以上就是本文JavaWeb文件下载的代码,希望对大家的学习有所帮助,也希望大家多多支持phpstudy。
本文地址:https://www.stayed.cn/item/6457
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我