下载引入包gson-2.0.jar

1.字符转数据

final Map map = new HashMap();
map.put("contents",
    "[{\"Id\":\"111\",\"AcceptNum\":222,\"ArchiveNum\":333,\"ArchivRate\":444,\"CUR_DATA_DT\":555},{\"Id\":\"112\",\"AcceptNum\":222,\"ArchiveNum\":333,\"ArchivRate\":444,\"CUR_DATA_DT\":555}]");
map.put("footer", "{\"Id\":\"总合计\",\"AcceptNum\":151886,\"ArchiveNum\":449135}");
map.put("fields", "Id,AcceptNum,ArchiveNum,ArchivRate,CUR_DATA_DT"); String[] fields = {};// excel字段
String tempContent="";
JsonArray listArray = new JsonArray();
JsonObject object = new JsonObject();
JsonObject obj = new JsonObject();
obj = listArray.get(1).getAsJsonObject();
listArray = new JsonParser().parse(map.get("contents").toString()).getAsJsonArray();//json数组
  if (map.containsKey("footer") && !map.get("footer").toString().trim().equals("")) {
   footerJson = new JsonParser().parse(map.get("footer").toString()).getAsJsonObject();//json对象
   map.remove("footer");
  }
fields=map.get("fields").toString().trim().split(",", -1);//普通数组
tempContent= obj.get("Id").toString().replace("\"", "");//json存取

2.构造json对象

JsonObject object = new JsonObject();
// add the key/value property
object.addProperty("code", "0");
object.addProperty("msg", "error");
JsonArray listArray = new JsonArray();
JsonObject Row = new JsonObject(); for(int rownum=1;rownum<5;rownum++){

    for (int colnum = 1; colnum <= 2; colnum++) {      // insert the cell(columnName/columnValue) into the row

      Row.addProperty("col"+colnum, "val"+colnum);

    }

// insert one row into listTable "List"

  listArray.add(Row);

}

JsonObject subObject = new JsonObject();

subObject.add("List", listArray);

subObject.addProperty("page", "1");
subObject.addProperty("page_size", "10");
subObject.addProperty("total_count", "25");
subObject.addProperty("page_count", "25");

object.add("result", subObject);

System.out.println(object.toString());

{"code":"0","msg":"error","result":{"page":"1","page_size":"10","total_count":"25","page_count":"25","List":[{"col1":"val1","col2":"val2"},{"col1":"val1","col2":"val2"},{"col1":"val1","col2":"val2"},{"col1":"val1","col2":"val2"},{"col1":"val1","col2":"val2"}]}}

java json字符串与对象转换的更多相关文章

  1. java json字符串和对象互转

    /** * Created by admin on 2017/7/26. */ public class NewPost { private String title; private String ...

  2. <摘录>Gson对Java嵌套对象和JSON字符串之间的转换

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识, ...

  3. java对象与json字符串的互相转换

    java对象与json字符串的互相转换 1.采用 net.sf.json.JSONObject maven依赖包: <dependency> <groupId>net.sf.j ...

  4. 使用Google的Gson实现对象和json字符串之间的转换

    使用Google的Gson实现对象和json字符串之间的转换 需要gson.jar 1.JsonUtil.java package com.snail.json; import java.lang.r ...

  5. json对象和json字符串之间的转换-JavaScript实现

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  6. js中json字符串与对象的转换及是否为空

    1.json对象(数组)转字符串 var b=[ { "CategoryName" : "Beverages", "ProductName" ...

  7. java json与map互相转换(二)

      java json与map互相转换(二) CreationTime--2018年7月16日15点09分 Author:Marydon 1.准备工作 所需jar包: commons-beanutil ...

  8. json字符串和对象的相互转化

    json在代码中是经常用到的,在此总结一下json字符串和对象及数组之间的相互转化: 1.javascript函数方式: <1> JSON.stringify :把一个对象转换成json字 ...

  9. java json与map互相转换(一)

      java json与map互相转换(一) CreationTime--2018年7月16日 Author:Marydon 1.准备工作 所需jar包:json-20180130.jar impor ...

随机推荐

  1. Python单元测试框架之pytest 2 -- 生成测试报告

    From: https://www.cnblogs.com/fnng/p/4768239.html Python单元测试框架之pytest -- 生成测试报告 2015-08-29 00:40 by ...

  2. JavaEE Web 开发 链接 mysql 出现 Class.not found的错误

    明明在项目的library里头导入过mysql-connector.jar的包,但是在加载driver的时候eclipse一直报这个错误.解决方案其实很简单,就是同样的jar包在tomcat的安装目录 ...

  3. go学习day2

    值类型和应用类型 1.值类型:变量直接存储值,内存通常在栈中分配 基本数据类型int.float.bool.string以及数组和struct.如果在函数里面修改了,函数外不变 2.引用类型:变量存储 ...

  4. mina2中的session

    简介 session类图 Mina每建立一个连接同时会创建一个session对象,用于保存这次读写需要用到的所有信息.从抽象类AbstractIoSession中可以看出session具有如下功能: ...

  5. GO中DEFER的理解--DEFER执行的原理

    在golang当中,defer代码块会在函数调用链表中增加一个函数调用.这个函数调用不是普通的函数调用,而是会在函数正常返回,也就是return之后添加一个函数调用.因此,defer通常用来释放函数内 ...

  6. [UE4]旋转小地图

    一.Canvas Panel的旋转原点是Render Transform——>Pivot,Pivot坐标的取值范围是0到1,左上角的pivot坐标是[0,0],右下角的pivot坐标是[1,1] ...

  7. 一行代码避免OkHttp的网络库应用被抓包

    在建立socket连接之前,OkHttp会获取系统的代理信息,如果设置代理,那么通过DNS解析其IP然后使用代理IP来建立socket连接.如果没有设置代理,那么会使用请求中的url的IP地址,来建立 ...

  8. Vue Admin 后台管理

    https://segmentfault.com/a/1190000009188689

  9. Centos 7: 改变docker的image存放目录

    1.创建新的数据目录 mkdir /data/docker 2.关闭docker进程 systemctl stop docker 3.修改配置文件/usr/lib/systemd/system/doc ...

  10. Java基础知识_毕向东_Java基础视频教程笔记(22-25 GUI 网络编程 正则)

    22天-01-GUIGUI:Graphical User Interface 图形用户接口 Java为GUI提供的对象都存在java.Awt和javax.Swing两个包中CLI:Common lin ...