输入流为所提到的文件路径返回null

时间:2013-07-14 03:01:15

标签: java jasper-reports inputstream

enter image description here

我正在尝试从ReportUtil.java访问sample_report.jrxml文件。

以下是访问jrxml文件的代码:

InputStream in = new ReportUtil().getClass().getClassLoader().getResourceAsStream("resource/sample_report.jrxml");

我进入NULL状态。我尝试了各种组合来读取jrxml文件。

任何一种方法都可以正确获取文件吗?

2 个答案:

答案 0 :(得分:0)

在类路径中输入resources文件夹。

答案 1 :(得分:0)

假设您的项目是maven项目,并且您遵循maven惯例,那么 驻留在资源文件夹中的文件 sample_report.jrxml 将被复制到生成的jar文件的根级别。

要加载文件,您应该使用:

InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream( "sample_report.jrxml" );

BalusC已经很好地解释了here

正如 Brian Roach 所指出的那样,文件路径中存在拼写错误。