从文件解析json
2015-06-11 14:18
615 查看
#json.txt
{
name:"中国",
provinces:[
{name:"黑龙江",
citys:["佳木斯","大庆","哈尔滨","齐齐哈尔","牡丹江"]
},
{name:"辽宁",
citys:["沈阳","大连","盘锦"]
},
{name:"吉林",
citys:["吉林市","长春市","四平市"]
}
]
}
#JSonParser .java
import java.io.*;
import java.text.ParseException;
import org.json.*;
/**
* 从json文件读取数据,形成JSon对象,读取对象数据并打印
*/
public class JSonParser {
public static void main(String[] args) {
//从JSon文件读取数据
StringBuffer stringBuffer = new StringBuffer();
String line = null ;
try {
BufferedReader br = new BufferedReader(new FileReader(new File("json.txt")));
while( (line = br.readLine())!= null ){
stringBuffer.append(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try {
//将Json文件数据形成JSONObject对象
JSONObject jsonObject = new JSONObject(stringBuffer.toString());
//获取JSONObject对象数据并打印
JSONArray provinces = jsonObject.getJSONArray("provinces") ;
String name = null ;
StringBuffer jsonFileInfo = new StringBuffer();
JSONArray citys = null ;
for (int i = 0; i < provinces.length(); i++) {
name = provinces.getJSONObject(i).getString("name");
jsonFileInfo.append("/nname:" + name + "/n" + "citys:");
citys = provinces.getJSONObject(i).getJSONArray("citys");
for (int j = 0; j < citys.length(); j++) {
jsonFileInfo.append(citys.getString(j)+"/t");
}
}
System.out.println(jsonFileInfo);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
运行结果:
name:黑龙江
citys:佳木斯大庆哈尔滨齐齐哈尔牡丹江
name:辽宁
citys:沈阳大连盘锦
name:吉林
citys:吉林市长春市四平市
{
name:"中国",
provinces:[
{name:"黑龙江",
citys:["佳木斯","大庆","哈尔滨","齐齐哈尔","牡丹江"]
},
{name:"辽宁",
citys:["沈阳","大连","盘锦"]
},
{name:"吉林",
citys:["吉林市","长春市","四平市"]
}
]
}
#JSonParser .java
import java.io.*;
import java.text.ParseException;
import org.json.*;
/**
* 从json文件读取数据,形成JSon对象,读取对象数据并打印
*/
public class JSonParser {
public static void main(String[] args) {
//从JSon文件读取数据
StringBuffer stringBuffer = new StringBuffer();
String line = null ;
try {
BufferedReader br = new BufferedReader(new FileReader(new File("json.txt")));
while( (line = br.readLine())!= null ){
stringBuffer.append(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try {
//将Json文件数据形成JSONObject对象
JSONObject jsonObject = new JSONObject(stringBuffer.toString());
//获取JSONObject对象数据并打印
JSONArray provinces = jsonObject.getJSONArray("provinces") ;
String name = null ;
StringBuffer jsonFileInfo = new StringBuffer();
JSONArray citys = null ;
for (int i = 0; i < provinces.length(); i++) {
name = provinces.getJSONObject(i).getString("name");
jsonFileInfo.append("/nname:" + name + "/n" + "citys:");
citys = provinces.getJSONObject(i).getJSONArray("citys");
for (int j = 0; j < citys.length(); j++) {
jsonFileInfo.append(citys.getString(j)+"/t");
}
}
System.out.println(jsonFileInfo);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
运行结果:
name:黑龙江
citys:佳木斯大庆哈尔滨齐齐哈尔牡丹江
name:辽宁
citys:沈阳大连盘锦
name:吉林
citys:吉林市长春市四平市
相关文章推荐
- javascript 实现页面加载完再显示页面
- js正则匹配
- JSTL 核心标签库 使用
- Ajax的jsonp方式跨域获取数据
- JSON支持什么对象/类型?
- 【循序渐进MVC】第一回——一物多用Project.json依赖关系之dependencies节点
- Mithril.js 入门介绍
- JS-SDK生成签名代码
- Flarum 用到的前端 javascript 库
- [TypeScript] 建置输出单一JavaScript档案(.js)与Declaration档案(.d.ts)
- ExtJs自学教程(1):从一切API开始
- html5media.js让所有浏览器支持video标签
- 通过Anuglar Material串串学客户端开发 - javascript编译和gulpfile.js
- JavaScript中的setUTCDate()方法使用详解
- 重新介绍 JavaScript
- 详解JavaScript中setSeconds()方法的使用
- JavaScript中setMonth()方法的使用详解
- javaScript 关于闭包问题
- 在JavaScript中处理时间之setMinutes()方法的使用
- JavaScript捕获window窗口关闭事件