首页 > 编程语言 > 详细

java读取本地json数组并解析

时间:2019-08-02 10:09:54      阅读:336      评论:0      收藏:0      [点我收藏+]

1.本地json位置

技术分享图片

2,json数据

{
"garbages":
[
{"id":"/m/011k07","ename":"Football","cname":"足球","gtype":"可回收垃圾"},
{"id":"/m/012xff","ename":"Toothbrush","cname":"牙刷","gtype":"有害垃圾"}
]
}

 

3依赖jar

<!-- json读取支持包 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>

4.测试代码

/**
* 读取json文件,返回json串
* @param fileName
* @return
*/
public static String readJsonFile(String fileName) {
String jsonStr = "";
try {
File jsonFile = new File(fileName);
FileReader fileReader = new FileReader(jsonFile);

Reader reader = new InputStreamReader(new FileInputStream(jsonFile),"utf-8");
int ch = 0;
StringBuffer sb = new StringBuffer();
while ((ch = reader.read()) != -1) {
sb.append((char) ch);
}
fileReader.close();
reader.close();
jsonStr = sb.toString();
return jsonStr;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}

/**
*解析json串
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception{
String path = GetJson.class.getClassLoader().getResource("garbage.json").getPath();
String s = readJsonFile(path);
JSONObject jobj = JSON.parseObject(s);
JSONArray garbages = jobj.getJSONArray("garbages");
for (int i = 0; i < garbages.size(); i++) {
JSONObject key1 = (JSONObject)garbages.get(i);
String id = (String)key1.get("id");
String ename = (String)key1.get("ename");
String cname = (String)key1.get("cname");
String gtype = (String)key1.get("gtype");
System.out.println(id);
System.out.println(ename);
System.out.println(cname);
System.out.println(gtype);
}
}

}

java读取本地json数组并解析

原文:https://www.cnblogs.com/guangxiang/p/11286572.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!