gpt4 book ai didi

java - FileOutputStream 没有写入服务器上的磁盘?文件去哪里了?

转载 作者:行者123 更新时间:2023-11-28 22:31:19 25 4
gpt4 key购买 nike

我一直在尝试使用动态报告生成报告文件,但它似乎并没有在服务器上创建文件。当我使用在本地运行的相同方法时,它会生成文件,但是当我在服务器上运行它时,没有创建文件。我在 Eclipse 中运行 Tomcat 7。该文件应该使用 FileOutputStream 创建。

下面是在本地有效但在 Tomcat 上无效的方法:

StyleBuilder plainStyle = stl.style().setFontName("FreeUniversal");
StyleBuilder boldStyle = stl.style(plainStyle).bold();
StyleBuilder italicStyle = stl.style(plainStyle).italic();
StyleBuilder boldItalicStyle = stl.style(plainStyle).boldItalic();

try {
report().title(
Templates.createTitleComponent("Fonts"),
cmp.text("FreeUniversal font - plain").setStyle(plainStyle),
cmp.text("FreeUniversal font - bold").setStyle(boldStyle),
cmp.text("FreeUniversal font - italic").setStyle(italicStyle),
cmp.text("FreeUniversal font - bolditalic").setStyle(boldItalicStyle))
.toDocx(createFile("docx"))
// .show()
;
} catch (DRException e) {
e.printStackTrace();
}

还有 CreateFile(...) 方法:

private FileOutputStream createFile(String extension) throws FileNotFoundException {
FileOutputStream file;
String filePath = reportsPath + "generated_report." + extension;
filePath = "generated_report." + extension;
System.out.println("FILENAME IS: " + filePath);

file = new FileOutputStream(new File(filePath));

return file;
}

我知道这里的 reportsPath 没有激活。

所以没有异常(exception)。顺便说一句,其他文件也可能不会在此服务器上创建,因为我也通过 servlet 上传了一个文件并且它被使用了,但是它没有出现在路径中的任何地方并且它没有'好像没有保存,不过反正我也不需要保留上传的文件,所以倒是没有太大的顾虑,但是现在这个?我需要能够找到这些报告,因此必须创建文件。

而且我确定不是我找不到文件,我到处都在搜索,实际上在我运行服务器的所有计算机中,都没有使用该名称创建的文件.. .

那么,有什么想法吗?一定是Tomcat配置问题还是什么?

有什么想法吗?谢谢

最佳答案

输出已写入您在构造函数中提供的文件。如果那是相对文件名,则它是相对于您执行代码时的当前工作目录的。

否则会抛出 IOException 并且代码根本不会执行。

关于java - FileOutputStream 没有写入服务器上的磁盘?文件去哪里了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16867998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com