2

我在src的包中有 .tpl 文件,其中包含一些静态内容。例如,我正在尝试从该文件( )src/A/B/C/test.tpl的同级类中读取它。src/A/B/C/Test

我怎么都找不到!FileReader 抛出 FileNotFoundException。

解决方案: Class.getResource() 有效。问题是关于默认情况下不会编译的 tpl 扩展。IDE 具有添加扩展以进行编译的设置。我使用 .html 而不是更新编译器设置。

Test.class.getResource("/A/B/C/test.html").getPath().replace("%20", " ")
4

2 回答 2

3

您应该使用ClassLoader.html#getResourceAsStream

getClassloader().getResourceAsStream(resourcePath);
于 2012-12-11T14:30:38.097 回答
0

如何将文件移动到 src/main/resources 然后尝试类似 -

ApplicationContext context = new ClassPathXmlApplicationContext("classpath:/test.tpl");

    try {

        context.getClassLoader().getResourceAsStream("test.tpl");

       ...
        } 
   catch (IOException ex) {
        ex.printStackTrace();
    }
于 2012-12-11T14:34:41.897 回答