最近工作遇到了 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. PAT Advanced 1155 Heap Paths (30 分)

    In computer science, a heap is a specialized tree-based data structure that satisfies the heap prope ...

  2. pandas.to_json&to_dict&from_json&from_dict解读

    pandas 中的to_dict 可以对DataFrame类型的数据进行转换 可以选择六种的转换类型,分别对应于参数 ‘dict’, ‘list’, ‘series’, ‘split’, ‘recor ...

  3. unity 用代码控制动画的播放的进度

    https://answers.unity.com/questions/1225328/imported-animated-object-and-slider-tutorial.html using ...

  4. composer查看全局配置

    composer config -l -g composer 更新慢 composer下载不下来问题解决 使用 Composer 镜像加速有两种选项: 选项一:全局配置,这样所有项目都能惠及(推荐): ...

  5. Appium Python测试环境搭建

    详细参考地址:https://www.cnblogs.com/amoyshmily/p/10500687.html 1,Appium安装:https://github.com/appium/appiu ...

  6. php 一段 shmop

    $size = 1024*1024; $shm_key = ftok(__FILE__, 't'); $shm_id = shmop_open($shm_key, "c", 064 ...

  7. [Linux]ubuntu更改国内源

    转自: https://blog.csdn.net/qq_35451572/article/details/79516563 推荐快速更新国内源 https://blog.csdn.net/qq_35 ...

  8. 说说如何使用unity Vs来进行断点调试

    转载自:http://dong2008hong.blog.163.com/blog/static/4696882720140293549365/ 大家可以从这下载最新版的unity vs. Unity ...

  9. 2018-2019-2 20175226王鹏雲 实验四《Android程序设计》实验报告

    2018-2019-2 20175226王鹏雲 实验四<Android程序设计>实验报告 实验报告封面 课程:Java程序设计 班级:1752班 姓名:王鹏雲 学号:20175226 指导 ...

  10. 用gcov来检查Qt C++程序的代码覆盖率

      最近才发现MinGW里面包含一个叫做gcov的工具,可以用来检查你的程序运行时调用了哪些代码,同时显示代码行被调用的次数.这个功能在代码的覆盖率和性能调优方便都能用上. 我的运行环境 Window ...