json两层解析
2024-09-30 16:46:49
public class Demo { public static void main(String[] args) {
try {
// 创建连接 服务器的连接地址
URL url = new URL(
"http://apicloud.mob.com/v1/mobile/address/query?phone=13026610069&key=1b2e046d45634");
try {
// 创建输入流
BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));
// 创建一个StringBuffer对象
StringBuffer sb = new StringBuffer();
// 定义一个字符串变量
String st ;
// 不等于null的时候一直读
while ((st = br.readLine()) != null) {
// 读取的所有字符串添加到sb
sb.append(st);
}
// 创建第一个解析 需要解析的字符串
JSONObject first = JSONObject.fromObject(sb.toString());
// 打印需要解析的字符串
System.out.println(sb.toString());
System.out.println("===============json第一层解析============");
System.out.println("msg:"+first.get("msg"));
System.out.println("retCode:"+first.get("retCode"));
System.out.println("result:"+first.get("result")); // 创建第二个解析 需要解析的字符串
JSONObject second = JSONObject.fromObject(first.get("result"));
System.out.println("==============json第二层解析==============");
System.out.println("city:"+second.get("city"));
System.out.println("cityCode:"+second.get("cityCode"));
System.out.println("mobileNumber:"+second.get("mobileNumber"));
System.out.println("operator:"+second.get("operator"));
System.out.println("province:"+second.get("province"));
System.out.println("zipCode:"+second.get("zipCode"));
} catch (IOException e) {
e.printStackTrace();
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
} }
最新文章
- sublime Text3及其插件的使用
- JAVA 多线程随笔 (一) 可见性和volatile关键字
- ehcache2.8.3入门示例:hello world
- js随机从数组中取出几个元素
- 20145213《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
- JavaDate类
- 默认的app.js
- centos 安装ftp服务器
- 四则运算 WEB
- JavaScript拆分字符串并将分割的数据放到数组中
- C++ explicit关键字详解(转载)
- javase学习小结三
- Yii2中JSONP跨域问题的解决
- ruby中__FILE__,$FILENAME,$PROGRAM_NAME,$0等类似变量的含义
- JS获取字符串实际长度(包含汉字)的简单方法
- Java程序设计的第二次作业
- PostgreSQL Oracle 兼容性之 - sys_guid()
- 每天CSS学习之caption-side
- jsp&;el&;jstl mvc和三层架构
- python3 调用 salt-api