gpt4 book ai didi

java - 使用 getServletConfig 获取文件名时出错

转载 作者:太空宇宙 更新时间:2023-11-04 07:45:16 25 4
gpt4 key购买 nike

我正在使用 JasperReport 在 Java Web 应用程序中生成报告。

我有以下行来获取报告文件。

JasperReport report = (JasperReport) JRLoader.loadObject(getServletConfig().getServletContext().getRealPath("\rpts\report1.jasper"));

但是当我尝试使用上面的行时,我收到了FileNotFoundException。但是当我尝试使用以下行时,程序成功执行。

JasperReport report = (JasperReport) JRLoader.loadObject(getServletConfig().getServletContext().getRealPath("//rpts//report1.jasper"));

所以,我想知道第一行有什么问题?

提前致谢...

最佳答案

Java 语言(和其他语言)需要 String 中的 \\(双反斜杠)才能读取单个 \。你的第一种方式应该改为

JasperReport report = (JasperReport) JRLoader.loadObject(getServletConfig()
.getServletContext().getRealPath("\\rpts\\report1.jasper"))

不过,最好使用 / 检查路径,甚至使用 File#separator 更好。如下所示:File.separator vs Slash in Paths

关于java - 使用 getServletConfig 获取文件名时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15402299/

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