JSON(2)JSONObject解析Josn和创建Jsonf示例
1.解析Json
/*
* test.josn内容如下:
{
"languages":[
{"id":"1","name":"Java","ide":"Eclipse"}
,{"id":"2","name":"Swift","ide":"Xcode"}
,{"id":"3","name":"C#","ide":"Visual studio"}
]
,"cat":"it"
}
*/
void json_parser(){
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()); /* 1.解析languages
"languages":[
{"id":"1","name":"Java","ide":"Eclipse"}
,{"id":"2","name":"Swift","ide":"Xcode"}
,{"id":"3","name":"C#","ide":"Visual studio"}
]
*/
JSONArray languagesArray = root.getJSONArray("languages"); output.setText("");
for (int i = ; i < languagesArray.length(); i++) {
JSONObject lan = languagesArray.getJSONObject(i);
output.append("\n");
output.append("\t id = " + lan.getInt("id"));
output.append("\t name = " + lan.getString("name"));
output.append("\t ide = " + lan.getString("ide"));
output.append("\n");
}
/*
* 2.解析cat
* "cat":"it"
*/
output.append("\n\t cat = " + root.getString("cat")); } catch (IOException e) {
output.append(e.getMessage());
e.printStackTrace();
} catch (JSONException e) {
output.append(e.getMessage());
e.printStackTrace();
}
}
2.创建Json
void create_json(){
JSONObject root = new JSONObject();
try {
/*
* 1.创建 "cat"
* "cat":"it"
*/
root.put("cat", "it");
/*
* 2.创建 "languages"
* "languages":[
{"id":"1","name":"Java","ide":"Eclipse"}
,{"id":"2","name":"Swift","ide":"Xcode"}
,{"id":"3","name":"C#","ide":"Visual studio"}
]
*/
JSONObject lan1 = new JSONObject();
lan1.put("id", );
lan1.put("name", "Java");
lan1.put("ide", "Eclipse");
JSONObject lan2 = new JSONObject();
lan2.put("id", );
lan2.put("name", "Swift");
lan2.put("ide", "Xcode");
JSONObject lan3 = new JSONObject();
lan3.put("id", );
lan3.put("name", "C#");
lan3.put("ide", "Visual studio");
JSONArray languagesArray = new JSONArray();
languagesArray.put(lan1);
languagesArray.put(lan2);
languagesArray.put(lan3);
root.put("languages", languagesArray);
output.setText(root.toString());
} catch (JSONException e) {
e.printStackTrace();
}
}
JSON(2)JSONObject解析Josn和创建Jsonf示例的更多相关文章
- fastjson对json字符串JSONObject和JSONArray互相转换操作示例
2017-03-25 直接上代码: package com.tapt.instance; import com.alibaba.fastjson.JSON; import com.alibaba.fa ...
- 《项目经验》--后台一般处理程序向前台JS文件传递JSON,JS解析JSON,将数据显示在界面--显示在DropDownList 或 显示在动态创建的table中
http://blog.csdn.net/mazhaojuan/article/details/8599167 先看一下我要实现的功能界面: 这篇文章主要介绍:后台一般处理程序把从数据库查找的数据,转 ...
- android通过httpClient请求获取JSON数据并且解析
使用.net创建一个ashx文件,并response.write json格式 public void ProcessRequest(HttpContext context) { context.R ...
- Android Json生成及解析实例
JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...
- HttpURLConnection从网上获取Json数据并解析详解
HttpURLConnection从网上获取Json数据并解析 1.HttpURLConnection请求数据的步骤 (1)构造一个URL接口地址: URL url = new URL("h ...
- json两层解析
public class Demo { public static void main(String[] args) { try { // 创建连接 服务器的连接地址 URL url = new UR ...
- Java中使用org.json和json-lib解析JSON
文章目录 [隐藏] 一.JavaProject中org.json解析JSON 1.JSON的org.son-api下载 1)JSON网址 2)JSON的java解析org.json-api网址 3) ...
- json 构造和解析
目录: (1)引入jar包: (2)json的构造: (3)json的解析: (4)遍历未知key. (1)java对json的处理,可借助org.json.jar. <!-- https:// ...
- android Json Gson FastJson 解析
一 Json xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:a ...
随机推荐
- Python使用django搭建web开发环境
安装 Python 去 Python 官方网站找到 Python 3 的下载地址,根据你的系统选择 32 位或者 64 位的安装包,下载好后双击安装即可. 检测是否安装完成 C:\WINDOWS\sy ...
- Dubbo应用启动与停止脚本,超具体解析
本周刚好研究了一下dubbo的启动脚本,所以在官网的启动脚本和公司内部的启动脚本做了一个整理,弄了一份比較通过的Dubbo应用启动和停止脚本. 以下的脚本仅仅应用于配置分离的应用.什 ...
- Got error: 1449: The user specified as a definer ('root'@'%') does not exist when using LOCK TAB
在linux下,用mysql的导出语句: mysqldump -hlocalhost -uroot -pPasswd table >/home/ftp/test.sql 出现了 mysqldum ...
- mysql查看所有存储过程,函数,视图,触发器,表,分页
查询数据库中的存储过程和函数 方法一: select `name` from mysql.proc where db = 'your_db_name' and `type` = 'PROCEDURE' ...
- 发挥bat的作用
from 转自:http://blog.csdn.net/hitlion2008/article/details/7467252 1.什么是Windows BATCH BATCH也就是批处理文件,有时 ...
- 2016/4/2 json:js和jquery中轻量级数据交换格式 例: 窗口弹出 popwindow
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...
- C项目实践--俄罗斯方块(1)
俄罗斯方块游戏是由前苏联科学院计算机中心的工程师阿列克谢.帕基特诺夫发明的一款小游戏. 1.功能需求分析 1.1主要功能 实现三个功能:1.游戏欢迎界面:2.游戏执行功能,包括计算得分:3.游戏结束界 ...
- 不同节点 IP 时间同步 分布式时间同步系统的参考时间获取技术分析
linux linux下时间同步的两种方法分享_LINUX_操作系统_脚本之家 http://www.jb51.net/LINUXjishu/73979.html 分布式时间同步系统的参考时间获取技术 ...
- UVA10600 ACM Contest and Blackout —— 次小生成树
题目链接:https://vjudge.net/problem/UVA-10600 In order to prepare the “The First National ACM School Con ...
- 【Selenium】idea导入eclisp项目的问题
①导入:file→new→Project from exiting 选择ecliesp 然后next就可以 ②添加依赖:每个包都要加,引用其他包的类,也要添加依赖 setting选择junit4