有没有办法提供文件下载而无需从 Java 中的路径读取文件?

问题描述

在我的程序中,我有一个 getRequest (JavaSpark),它为我提供了一个用 Java 创建的 Excel 文件以供下载。

为此,我创建了 Excel 文件,将其保存在一个文件夹中,然后通过路径读取该文件。

作品。

代码 - ExcelCreation:

public void createPlanWorkbook() throws Exception {
    ...
    ... 
    do something with workbook...

    workBook.write("C:\\Users\\Develope\\Desktop\\Excel.xlsm");
}

代码 - 请求:

get("/excelfile",((request,response) -> {
    response.header("Content-disposition","attachment; filename=Excel.xlsm;");

    File file = new File("C:\\Users\\Develope\\Desktop\\Excel.xlsm");
    OutputStream outputStream = response.raw().getOutputStream();
    outputStream.write(Files.readAllBytes(file.toPath()));
    outputStream.flush();
    return response;
}));

我想知道是否有另一种方法可以实现这一点。是否需要保存然后读取文件的步骤?或者有没有办法将文件直接从Javaobject放入请求中。

例如:

outputStream.write(ExcelCreaterObject().getWorkbook());

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)