下载引入包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. 简单明了区分IE,Firefox,chrome主流浏览器

    简单明了判断浏览器Firefox:typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().index ...

  2. PyQt训练BP模型时,显示waiting动图(多线程)

    1.实现效果 2.相关代码 实现BP训练模型的线程类 class WorkThread(QtCore.QThread): finish_trigger = QtCore.pyqtSignal() # ...

  3. Javascript之类型转换(二)

    前言 类型转换js中主要有以下几种情况: 1.条件判断时: 2.对象转基本类型时: 3.四则运算时: 4.‘==’操作符比较值时: 5.比较运算符时. 一.条件判断时 在条件判断时,除了 undefi ...

  4. Bootstrap&bxslider

    Bootstrap 规则 一.响应式布局 @media 二.图标.字体 @font-face 三.基本使用 实例: <!DOCTYPE html> <html lang=" ...

  5. 【转】SOA架构设计经验分享—架构、职责、数据一致性

      1.背景介绍       最近一段时间都在做系统分析和设计工作,面对的业务是典型的重量级企业应用方向.突然发现很多以往觉得很简单的问题变得没有想象的那么容易,最大的问题就 是职责如何分配.论系统架 ...

  6. 在linux下sh批处理文件调用java的方法

    解密 java -classpath collection-impl-0.0.1.jar com.ai.toptea.collection.message.DESEncrypt 1EFE4663895 ...

  7. Linux下统计局域网流量

    1:统计10.86.0.0/16网段的内网流量情况 将下面脚本保存成文件traffic-lan.sh(运行后需要等待10秒抓包) tcpdump -nqt src net and dst net ! ...

  8. Ring0 - Lookaside结构

    由于频繁的申请,回收内存会导致在内存上产生大量的内存"空洞".这时使用Lookaside. 1.每次申请固定大小的内存. 2.申请和回收的操作十分频繁. 实现原理: 他先向wind ...

  9. Git revert及其他一些回退操作

    放弃本地的代码和本地提交,希望会退到远程分支的某次提交时,使用git reset --hard fa042ce. 本地已提交,但是发现有问题,想要撤销本地的提交,使用git checkout /trs ...

  10. CRM 2016 一个IFrame_A 刷新另一个 IFrame_B

    思路是 : 1 创建一个字段“new_xxx”. 2 注册字段 OnChange 事件. 3 OnChange 事件 刷新 IFrame_B子页面. CRM父页面JS: /// <summary ...