Java 解析json数据
2023-09-11 14:14:33 时间
1.依赖jar包
import org.json.JSONArray; import org.json.JSONObject;
2.代码实例(一)
json字符串的格式是{k:v, k:v, k:[{k:v},{k:v},{k:v}]}
{
"totalpages":"1",
"currpage":"1",
"totalrecords":"31",
"griddata":[
{
"tagkey":"YK011011012",
"unitkey":"YK01101",
"timestamp":"2019/7/16 10:24:29",
"value":"22.9",
"tagstatus":"0",
"sysgroup":"安全监测监控系统",
"createtime":"2019/7/16 10:24:29",
"unitname":"南屯煤矿",
"groupkey":"YK01",
"sortnum":"1",
"tagname":"三采避难硐室外温度",
"description":"",
"tagtype":"温度",
"engunit":"℃",
"datatype":"1",
"minraw":"45",
"maxraw":"-5",
"loalarmlimit":"35",
"hialarmlimit":"0"
},
{
"tagkey":"YK011011225",
"unitkey":"YK01101",
"timestamp":"2019/7/16 10:24:29",
"value":"28.2",
"tagstatus":"0",
"sysgroup":"安全监测监控系统",
"createtime":"2019/7/16 10:24:29",
"unitname":"南屯煤矿",
"groupkey":"YK01",
"sortnum":"1",
"tagname":"七采西部变电所温度",
"description":"",
"tagtype":"温度",
"engunit":"℃",
"datatype":"1",
"minraw":"45",
"maxraw":"-5",
"loalarmlimit":"34",
"hialarmlimit":"0"
}
]
}
代码解析:
package yk.bigdata.dl.ias.fileParse; import org.json.JSONArray; import org.json.JSONObject; /** * @Author: cjj * @Date: Created in 10:43 2019/7/16 * @Description: 解析json数据 */ public class TagValueJsonFileParse { public static void main(String[] args) { JsonParse(); } public static String JsonParse(){ String jsonStr ="{'totalpages':'1','currpage':'1','totalrecords':'31','griddata':[{'tagkey':'YK011011012','unitkey':'YK01101',},{'tagkey':'YK011011225','unitkey':'YK01102',}]}"; // 因为json字符串是大括号包围,所以用JSONObject解析 JSONObject jsonObj = new JSONObject(jsonStr); // 获取数组 JSONArray jsonArr = jsonObj.getJSONArray("griddata"); // 遍历数组里面的json for(int i=0;i<jsonArr.length();i++) { JSONObject tagValue = jsonArr.getJSONObject(i); String tagkey = tagValue.getString("tagkey"); String unitkey = tagValue.getString("unitkey"); System.out.println(tagkey+" , "+ unitkey); } return null; } }
3.代码实例(二)
json字符串的格式是:[{k:v},{k:v},{k:v}]
[
{"iconCls":"","children":[],"text":"断电状态"},
{"iconCls":"","children":[],"text":"风门"},
{"iconCls":"","children":[],"text":"风速"},
{"iconCls":"","children":[],"text":"风筒开关"},
{"iconCls":"","children":[],"text":"负压"},
{"iconCls":"","children":[],"text":"激光甲烷"},
{"iconCls":"","children":[],"text":"甲烷"},
{"iconCls":"","children":[],"text":"局扇"},
{"iconCls":"","children":[],"text":"馈电状态"},
{"iconCls":"","children":[],"text":"温度"},
{"iconCls":"","children":[],"text":"一氧化碳"},
{"iconCls":"","children":[],"text":"主扇"}
]
代码解析:
JSONObject jsonObject; JSONArray jsonArray = new JSONArray(jsonStr); // 直接解析成数组 for(int i=0;i<jsonArray.length();i++){ jsonObject = jsonArray.getJSONObject(i); String str = jsonObject.getString("text"); System.out.println(str); }
相关文章
- JSON与JAVA数据的相互转换
- Java实现 蓝桥杯VIP 算法训练 -2进制(暴力)
- Java实现 蓝桥杯 算法训练 Pollution Solution
- Java实现 蓝桥杯VIP 算法训练 链表数据求和操作
- Json对象与Json字符串的转化、JSON字符串与Java对象的转换
- 【JAVA】 02-Java对象细节
- 【总结】java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格
- java多线程通信之共享数据
- java中文所占字节数
- java.math.BigInteger cannot be cast to java.lang.Long
- java判定数据(对象)类型
- Java 基础类型 默认值
- Json string to object debug - json字符串转Java对象的处理调试
- Android的java本地调用
- Flutter高级第2篇:JSON的序列化和反序列化、创建模型类转换Json数据
- 【java】Java经典面试题整理(附答案)
- 【Java】java 环境配置(详细教程)
- Python JSON 数据|编码解码JSON数据,import json,json.dumps,json.loads
- JAVA实现多线程入门
- java对象和json数据转换实现方式3-使用jackson实现
- 如何使用Google APIs和Google应用系统集成(7)----在里面JSON兑换XML数据处理,JSON数据包括违规XML数据规范:XML节点名称不支持号码Java解
- Java数组列表反转