JSON解析
2016-05-12 00:14
489 查看
一、Android自带JSON解析的API
1.读取JSON格式数据
{
"languages":[
{"id":1,"ide":"Eclipse","name":"Java"},
{"id":2,"ide":"XCode","name":"Swift"},
{"id":3,"ide":"Visual","name":"C#"}
],
"cat":"it"
}
<span style="white-space:pre"> </span>try {
InputStreamReader isr = new InputStreamReader(getAssets().open("test.json"), "UTF-8");
BufferedReader br = new BufferedReader(isr);
String line;
StringBuilder builder = new StringBuilder();
while ((line = br.readLine()) != null) {
builder.append(line);
}
br.close();
isr.close();
JSONObject root = new JSONObject(builder.toString());
System.out.println("cat=" + root.getString("cat"));
JSONArray array = root.getJSONArray("languages");
for (int i = 0; i < array.length(); i++) {
JSONObject lan = array.getJSONObject(i);
System.out.println("------------------------------");
System.out.println("id=" + lan.getInt("id"));
System.out.println("name=" + lan.getString("name"));
System.out.println("ide=" + lan.getString("ide"));
}
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
2.创建JSON格式数据
try {
JSONObject root = new JSONObject();
root.put("cat", "it");
JSONObject lan1 = new JSONObject();
lan1.put("id", 1);
lan1.put("name", "Java");
lan1.put("ide", "Eclipse");
JSONObject lan2 = new JSONObject();
lan2.put("id", 2);
lan2.put("name", "Swift");
lan2.put("ide", "XCode");
JSONObject lan3 = new JSONObject();
lan3.put("id", 3);
lan3.put("name", "C#");
lan3.put("ide", "Visual");
JSONArray array = new JSONArray();
array.put(lan1);
array.put(lan2);
array.put(lan3);
root.put("languages", array);
System.out.println(root.toString());
} catch (JSONException e) {
e.printStackTrace();
}
1.读取JSON格式数据
{
"languages":[
{"id":1,"ide":"Eclipse","name":"Java"},
{"id":2,"ide":"XCode","name":"Swift"},
{"id":3,"ide":"Visual","name":"C#"}
],
"cat":"it"
}
<span style="white-space:pre"> </span>try {
InputStreamReader isr = new InputStreamReader(getAssets().open("test.json"), "UTF-8");
BufferedReader br = new BufferedReader(isr);
String line;
StringBuilder builder = new StringBuilder();
while ((line = br.readLine()) != null) {
builder.append(line);
}
br.close();
isr.close();
JSONObject root = new JSONObject(builder.toString());
System.out.println("cat=" + root.getString("cat"));
JSONArray array = root.getJSONArray("languages");
for (int i = 0; i < array.length(); i++) {
JSONObject lan = array.getJSONObject(i);
System.out.println("------------------------------");
System.out.println("id=" + lan.getInt("id"));
System.out.println("name=" + lan.getString("name"));
System.out.println("ide=" + lan.getString("ide"));
}
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
2.创建JSON格式数据
try {
JSONObject root = new JSONObject();
root.put("cat", "it");
JSONObject lan1 = new JSONObject();
lan1.put("id", 1);
lan1.put("name", "Java");
lan1.put("ide", "Eclipse");
JSONObject lan2 = new JSONObject();
lan2.put("id", 2);
lan2.put("name", "Swift");
lan2.put("ide", "XCode");
JSONObject lan3 = new JSONObject();
lan3.put("id", 3);
lan3.put("name", "C#");
lan3.put("ide", "Visual");
JSONArray array = new JSONArray();
array.put(lan1);
array.put(lan2);
array.put(lan3);
root.put("languages", array);
System.out.println(root.toString());
} catch (JSONException e) {
e.printStackTrace();
}
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories