欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

读取Jar包中的json文件

程序员文章站 2022-03-02 21:06:49
...

Json转换:读取Jar包中的json文件

现在操作json的jar 都是用的Gson,
如果需要读取的json文件不在jar包里面,则可以这样获取到:

String path = this.getClass().getClassLoader().getResource("json/abc.json").getPath();//该目录是以resources目录为根目录
//文件内容直接转为String类型 String content = FileUtils.readFileToString(new File(path), "UTF-8");
JSONObject obj = JSONObject.parseObject(content)

否则就需要下面这样获取:

String jsonStr = "";
String path = "json/abc.json";//该目录是以resources目录为根目录
//文件内容直接转为String类型

InputStream is = this.getClass().getClassLoader().getResourceAsStream(path);
//举例:InputStream inputStream = XXXX.class.getClassLoader().getResourceAsStream(path);
BufferedReader in = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8")));
StringBuffer buffer = new StringBuffer();
String line = "";
while ((line = in.readLine()) != null){
buffer.append(line);
}
jsonStr = buffer.toString();

使用Gson获取内容:

Gson gson = new Gson();
Type type = new TypeToken<Map<String, List<String>>>() {}.getType();
Map<String, List<String>> maps = gson.fromJson(jsonStr, type);