【问题标题】:Reading a JSON file in spring MVC在 Spring MVC 中读取 JSON 文件
【发布时间】:2018-03-03 07:50:47
【问题描述】:

我正在使用没有web.xml 的 JAVA 8、Servlet 3.1 和 springMVC。我在src\main\resources\data 中放置了一个info.json 文件。有一个 util 类,我试图从中读取文件。无论我给出什么路径都无法阅读它。我得到以下异常:

java.nio.file.NoSuchFileException: WEB-INF\classes\data\info.json 在 sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:79) 在 sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)

我正在尝试读取如下文件:

public static <T> T unMarshal(String json, Class<T> clazz) throws IOException, URISyntaxException {

        byte[] jsonData = Files.readAllBytes(Paths.get("WEB-INF\\classes\\data\\info.json"));
        return  objectMapper.readValue(jsonData, clazz);
    }

也尝试过像

这样的路径

C:\\domain\\src\\main\\resources\\data\\info.json src\\main\\resources\\data\\info.json data\\info.json

我尝试了不同的路径,也尝试了完全限定的路径,但仍然无法读取它。还尝试了File path to resource in our war/WEB-INF folder?,但无法获取上下文实例。请建议。

【问题讨论】:

  • 您的资源是您的 jar 或 war 文件的条目。它不是文件系统上的文件。 WEB-INF/classes 在你的 webapp 的类路径中。使用 YourClass.class.getResourceAsStream() 加载此资源的字节。不是文件 IO。
  • YourClass.getResourceAsStream() 我的班级不存在。
  • 对不起。 YourClass.class.getResourceAsStream().
  • 你可以参考这个问题Link

标签: spring spring-mvc


【解决方案1】:

尝试获取当前目录和文件的路径:

String filePath = new File("").getAbsolutePath();
System.out.println (filePath);

BufferedReader reader = new BufferedReader(new FileReader(filePath + "/src/DBTextFiles/Administrator.txt"));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-10
    • 1970-01-01
    • 2014-01-19
    • 2014-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多