欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaWeb文件下载功能实例代码

程序员文章站 2024-03-12 18:23:32
在工作中遇到的一个下载文件的功能,自己将其抽取出来,代码简单,希望能帮到大家,好了,话不多说,上代码! public void downloadfile(fi...

在工作中遇到的一个下载文件的功能,自己将其抽取出来,代码简单,希望能帮到大家,好了,话不多说,上代码!

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文件下载的代码,希望对大家的学习有所帮助,也希望大家多多支持。