在Web应用程序中以字符串形式读取src / main / resources中的文件的正确方法?

时间:2016-07-07 20:58:05

标签: java file web-applications path

我有一个Web应用程序,它具有以下结构(部分)。

Project Name
   src/main/java
       com.package
           MainFile.java
   src/main/resources
       sample.xml

现在我想从MainFile.java中读取sample.xml作为字符串。

我尝试使用此方法但获得了NoSuchFileException

byte[] encoded = Files.readAllBytes(Paths.get("src/main/resources/sample.xml"));
return new String(encoded, StandardCharsets.UTF_8);

请建议解决此问题。

2 个答案:

答案 0 :(得分:0)

试试这个:

Curriculum.update(doc._id,{ $addToSet: { apps: { appId: appId } } } );

resources 应该在classpath中,ClassLoader应该为你找到它。

答案 1 :(得分:0)

此文件位于Web应用程序类路径中,因此您可以将其命名为:

Path path = Paths.get(getClass().getResource("/sample.xml").toURI());
return new String(Files.readAllBytes(path));