Java实现文件下载

Java实现文件下载

     @GetMapping("/getFile")
    public Boolean getFile(HttpServletResponse response) throws IOException {
        //文件路径
        final String filePath = "E:/test.log";
        String uuid = UUID.randomUUID().toString() + ".log";
        // 设置响应头和客户端保存文件名
        response.setCharacterEncoding("utf-8");
        response.setContentType("multipart/form-data");
        response.setHeader("Content-Disposition",
            "attachment;fileName=" + new String(uuid.getBytes("UTF-8"), "iso-8859-1"));
        // 打开本地文件流
        InputStream inputStream = new FileInputStream(filePath);
        // 激活下载操作
        OutputStream os = response.getOutputStream();
        try {
            // 循环写入输出流 10KB
            byte[] b = new byte[10 * 1024 * 8];
            int length;
            while ((length = inputStream.read(b)) > 0) {
                os.write(b, 0, length);
                os.flush();
            }
            return true;
        } catch (Exception e) {
            throw e;
        } finally {
            os.close();
            inputStream.close();
        }

    }
原文地址:https://www.cnblogs.com/szls-666/p/12494156.html