当前位置:首页 » JAVA技术教程

java实现文件下载功能代码

2018-11-18 13:41 本站整理 浏览(4546)

 
import java.io.BufferedOutputStream;
import java.io.OutputStream;
import java.net.URLEncoder;
 
import javax.servlet.http.HttpServletResponse;
 
 
/**
 *  java实现文件下载功能代码
 *  创建时间:2014年12月23日
 * @version
 */
public class FileDownload {
 
    /**
     * @param response
     * @param filePath      //文件完整路径(包括文件名和扩展名)
     * @param fileName      //下载后看到的文件名
     * @return  文件名
     */
    public static void fileDownload(final HttpServletResponse response, String filePath, String fileName) throws Exception{ 
              
            byte[] data = FileUtil.toByteArray3(filePath); 
            fileName = URLEncoder.encode(fileName, "UTF-8"); 
            response.reset(); 
            response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\""); 
            response.addHeader("Content-Length", "" + data.length); 
            response.setContentType("application/octet-stream;charset=UTF-8"); 
            OutputStream outputStream = new BufferedOutputStream(response.getOutputStream()); 
            outputStream.write(data); 
            outputStream.flush(); 
            outputStream.close(); 
             
        }
 
}