springboot讀取本地項目文件


在讀取springBoot+gradle構建的項目時,如果使用傳統的FileInputStream讀取文件流或者ResourceUtils工具類的方式

File file= ResourceUtils.getFile("classpath:test.txt");

在springboot中可以使用ClassPathResource獲取文件流的方式方便下載文件

try {
    ClassPathResource classPathResource = new ClassPathResource("sql/SCHEDULE_TASK.sql");
File file = classPathResource.getFile();
InputStream inputStream = classPathResource.getInputStream();
  //輸出文件
InputStream fis = new BufferedInputStream(inputStream);
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
response.reset();

//獲取文件的名字再瀏覽器下載頁面
String name = file.getName();
response.addHeader("Content-Disposition", "attachment;filename=" + new String(name.getBytes(), "iso-8859-1"));
response.addHeader("Content-Length", "" + file.length());
OutputStream out = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
out.write(buffer);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
最后就是瀏覽器訪問接口下載文件了

 

這樣下載文件就很簡單了

 

 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM