JAVA / Jasper PDF 报告:当另一台设备中的同一操作系统可以读取文件时,读取操作系统中的文件路径时出错

JAVA / Jasper PDF Reporting: Error reading File path in my OS when the same OS in another device can read the file

提问人:Kristian - 提问时间:10/20/2023 最后编辑:Kristian - 更新时间:10/20/2023 访问量:32

问:

我在读取文件路径时遇到了问题。

我在文件路径上使用 JasperReport 和函数 FileResourceLoader.getInputStream。输入的内容是:

file:///apps/repodoc/generate/template/\j26\46.jrxml

( '/' 来自 File.separator 方法 )

它给出文件未找到异常。但话又说回来,我使用 Windows 10 作为操作系统。 但是......当它在我朋友的设备中使用时,它工作正常!

我尝试将路径修改为类似

file://D:\apps\repodoc\generate\template\j26\46.jrxml

虽然如果我创建了一个带有 D 路径的 File 对象,如果我运行 exists() 方法,它会给出一个 true。但是在 getInputStream 中,我得到了一个 UnknownHostException (D)。

我还应该在哪里查看这里?应该注意的是,我的朋友使用相同的操作系统(Windows 10),并且在他的位置上,它运行良好。我的IDE是IntelliJ IDEA。

谢谢。

java 文件 操作系统 jasper-reports inputstream

评论

0赞 user207421 10/20/2023
反斜杠在 URL 中无效。它们都应该是正斜杠。序列应为 。但是你为什么要使用 URL?为什么不只是和朋友?/\j26/j26file:FileInputStream
0赞 Kristian - 10/20/2023
对不起,我不得不编辑整个问题。我正在使用 JasperReport,并且有一个名为“FileResourceLoader.getInputStream()”的函数,并且不允许我编辑该部分。但核心是,当在我朋友的设备中运行在同一操作系统(Windows 10)上时,它可以工作。但它在我的 Windows 10 中不起作用。
0赞 user207421 10/20/2023
呃,当你修复URL时发生了什么?
0赞 Kristian - 10/20/2023
对不起,我不能随心所欲地直接修改网址。我的意思是,如果我愿意,我可以这样做,但这违反了我公司的协议。

答: 暂无答案