使用jackson编写和读取资源文件

t5fffqht  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(239)

我想救一个孩子 HashMap 作为json文件使用jackson。我想说的文件位于我的资源文件夹。

try {
        new ObjectMapper().writeValue(
                new File(MyClass.class.getResource("/path/file.json").toURI()), myHashMap);
    } catch (URISyntaxException | IOException e) {
        e.printStackTrace();
    }

我尝试过这种方法,它不会产生任何异常,但会给我留下一个空白的json文件。没有数据被写入其中。这是权限问题吗?
我还想把这个文件作为 HashMap . 这是我目前的做法:

Map<Long, String> tmp;
    try {
        tmp = new ObjectMapper().readValue(
                MyClass.class.getResourceAsStream("/path/file.json"), Map.class);
    } catch (IOException e) {
        tmp = new HashMap<>();
    }
    myHashMap = tmp;

有没有更好的办法?据我所知,异常通常是在找不到文件时抛出的(不考虑实际错误)。好吧,就用空的 HashMap 而不是。因为它将在以后填充并保存,所以这种情况只在第一次启动程序或删除文件时存在。
现在我在保存文件时遇到了很大的困难。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题