91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

springboot下載文件的方法是什么

小億
194
2024-02-04 09:13:26
欄目: 編程語言

在Spring Boot中,您可以使用以下方法來下載文件:

  1. 使用ResponseEntity<byte[]>返回文件數據和相關的HTTP頭信息。
@GetMapping("/download")
public ResponseEntity<byte[]> downloadFile() throws IOException {
    // 從文件系統或其他來源獲取文件
    File file = new File("path/to/file");

    // 將文件讀入字節數組
    byte[] fileContent = Files.readAllBytes(file.toPath());

    // 設置HTTP頭信息
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
    headers.setContentDispositionFormData("attachment", file.getName());

    // 返回ResponseEntity對象
    return new ResponseEntity<>(fileContent, headers, HttpStatus.OK);
}
  1. 使用InputStreamResourceResponseEntity<InputStreamResource>返回文件的輸入流和相關的HTTP頭信息。
@GetMapping("/download")
public ResponseEntity<InputStreamResource> downloadFile() throws IOException {
    // 從文件系統或其他來源獲取文件
    File file = new File("path/to/file");

    // 創建文件輸入流
    InputStreamResource resource = new InputStreamResource(new FileInputStream(file));

    // 設置HTTP頭信息
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
    headers.setContentDispositionFormData("attachment", file.getName());

    // 返回ResponseEntity對象
    return ResponseEntity.ok()
            .headers(headers)
            .contentLength(file.length())
            .body(resource);
}

這兩種方法都可以用來下載文件,具體使用哪種方法取決于您的需求和偏好。

0
兖州市| 九寨沟县| 阿克陶县| 阿城市| 孝义市| 喀什市| 延边| 沙雅县| 大冶市| 乾安县| 绥宁县| 九台市| 泌阳县| 车致| 金坛市| 纳雍县| 宁晋县| 冷水江市| 元氏县| 富裕县| 武夷山市| 渝中区| 德保县| 汉源县| 天全县| 奉节县| 亳州市| 沿河| 青海省| 乌苏市| 延庆县| 南木林县| 陆川县| 兰溪市| 平安县| 民县| 东乡族自治县| 和田县| 长治县| 荣成市| 海晏县|