最近工作遇到了 json 解析的相关需求,整理下 JSONObject 相关操作。

文中使用的例子都是基于阿里巴巴的产品 FastJSON ,涉及到的包有:

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

下面列举了开发过程中遇到过的一些常用操作:

(1) 创建 JSONObject

private static void createJSONObject() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "Jason");
jsonObject.put("id", 1);
jsonObject.put("phone", "18271415782");
System.out.println(jsonObject.toString());
}

(2) 创建 JSONArray

public static void createJsonArray() {
JSONArray jsonarray = new JSONArray(); JSONObject node = new JSONObject();
node.put("name","kwang");
node.put("age",20);
jsonarray.add(node); node = new JSONObject();
node.put("name","xkang");
node.put("age",15);
jsonarray.add(node);
System.out.println(jsonarray);
}

(3) String 转换为 JSONObject 对象

public static void StringToJson(String str) {
JSONObject json = (JSONObject)JSONObject.parse(str);
Iterator it = json.keySet().iterator();
while (it.hasNext()) {
String key = it.next().toString();
String value = String.valueOf(json.get(key));
System.out.println(key + ":" + value);
}
}

(4) JSONObject 转换为 String

public static void JsonToSTring() {
JSONObject json = new JSONObject();
//向json中添加数据
json.put("name", "kwang");
json.put("height", 175);
json.put("age", 24); //创建JSONArray数组,并将json添加到数组
JSONArray array = new JSONArray();
array.add(json); //转换为字符串
String jsonStr = array.toString(); System.out.println(jsonStr);
}

【参考链接】

[1] feri, JAVA中的四种JSON解析方式详解.

java创建和解析json对象的更多相关文章

  1. Java创建和解析Json数据方法(四)——json-lib包的使用

    (四)json-lib包的使用         既然json-lib包比org.json包重量级,那么json-lib包肯定有很多org.json包没有的类和方法,这篇笔记简单记录json-lib包中 ...

  2. Java创建和解析Json数据方法(三)——json-lib包的使用

    (三)json-lib包的使用         这篇笔记主要介绍json-lib包的创建和解析json数据的方式,主要是的JSONObject.JSONArray和Java对象:beans, maps ...

  3. Java创建和解析Json数据方法(二)——org.json包的使用

    (二)org.json包的使用 1.简介   工具包org.json.jar,是一个轻量级的,JAVA下的json构造和解析工具包,它还包含JSON与XML, HTTP headers, Cookie ...

  4. Java创建和解析Json数据方法——org.json包的使用(转)

    org.json包的使用 1.简介   工具包org.json.jar,是一个轻量级的,JAVA下的json构造和解析工具包,它还包含JSON与XML, HTTP headers, Cookies, ...

  5. Java创建和解析Json数据方法(五)——Google Gson包的使用

    (五)Google Gson包的使用 1.简介 Gson包中,使用最多的是Gson类的toJson()和fromJson()方法:         ①toJson():将java对象转化为json数据 ...

  6. Java构造和解析Json数据的两种方法详解二

    在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...

  7. jquery遍历筛选数组的几种方法和遍历解析json对象

    jquery grep()筛选遍历数组 $().ready(    function(){        var array = [1,2,3,4,5,6,7,8,9];        var fil ...

  8. Java构造和解析Json数据的两种方法详解二——org.json

    转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/24/3096437.html 在www.json.org上公布了很多JAVA下的jso ...

  9. Java构造和解析Json数据的两种方法详解一——json-lib

    转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html 在www.json.org上公布了很多JAVA下的jso ...

随机推荐

  1. python——flask常见接口开发(简单案例)

    python——flask常见接口开发(简单案例)原创 大蛇王 发布于2019-01-24 11:34:06 阅读数 5208 收藏展开 版本:python3.5+ 模块:flask 目标:开发一个只 ...

  2. 【HDU5952】Counting Cliques

    题目大意:给定一个\(N\)个点,\(M\)条边的无向图,求图中有多少个大小为\(S\)的团.\(N \le 100,deg(i)\le 20,i\in [1,n]\). 题解: 考虑搜索. 需要确定 ...

  3. Idea中Module is not specified解决办法

    打开idea,想跑一个类,但是,给我报了一个红叉: 当我点击run的时候,弹出来一个框: “Error:Module not specified”  Module 未指定 “这个原因是项目文件夹有修改 ...

  4. Codeforces Round #512 (Div. 2, based on Technocup 2019 Elimination Round 1) E. Vasya and Good Sequences(DP)

    题目链接:http://codeforces.com/contest/1058/problem/E 题意:给出 n 个数,对于一个选定的区间,区间内的数可以通过重新排列二进制数的位置得到一个新的数,问 ...

  5. Jquery调用Ajax实现联动使用json

    在很多时候我们都会使用到联动.jquery.js是一个不错的js框架.其ajax也挺不错.下面将实现一个js联动:选择公司出来受益人.根据公司不同受益人不同. 前提是:你用引入jquery.js &l ...

  6. javascript内置对象一:String

    <script>    //string.split("-"),以字符"-"把string拆分成一个数组.返回一个数组    //array.joi ...

  7. HDU 5544 Ba Gua Zhen ( 2015 CCPC 南阳 C、DFS+时间戳搜独立回路、线性基 )

    题目链接 题意 : 给出一副简单图.要你找出一个回路.使得其路径上边权的异或和最大 分析 : 类似的题有 BZOJ 2115 对于这种异或最长路的题目(走过的边可以重复走) 答案必定是由一条简单路径( ...

  8. Mac下Eclipse(Oxygen)添加Tomcat插件

    1 查看本机Tomcat版本 ~$ sh /Library/Tomcat/bin/catalina.sh version SiegdeMacBook-Pro:bin Sieg$ sh /Library ...

  9. Java异常Error和Exception

    简述 程序运行时,发生了不被期望的结果,阻止了程序按照预期正常执行,这就是异常.世界上没有不出错的程序,只有正确处理好意外情况,才能保证程序的可靠性. Java 语言在设计之初就提供了相对完善的异常处 ...

  10. 前端工程师需要掌握的 Babel 知识

    在前端圈子里,对于 Babel,大家肯定都比较熟悉了.如果哪天少了它,对于前端工程师来说肯定是个噩梦.Babel 的工作原理是怎样的可能了解的人就不太多了.本文将主要介绍 Babel 的工作原理以及怎 ...