GSON的简单示例
https://github.com/google/gson
package com.example.wolf; import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.google.gson.JsonParser; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; public class GSONTest { public static void main(String[] args) { try (BufferedReader br = new BufferedReader(new FileReader("JSONString.txt"))) { String line; StringBuilder sb = new StringBuilder(); while ((line = br.readLine()) != null) { sb.append(line); } JsonObject root = new JsonParser().parse(sb.toString()).getAsJsonObject(); JsonArray peopleArray = root.getAsJsonArray("people"); for (int i = 0; i != peopleArray.size(); ++i) { JsonObject elem = peopleArray.get(i).getAsJsonObject(); String peopleName = elem.get("people_name").getAsString(); String peopleId = elem.get("people_id").getAsString(); String tip = elem.get("tip").getAsString(); System.out.println("people_name: " + peopleName + "\npeople_id: " + peopleId + "\ntip: " + tip); } System.out.println(); int peopleCount = root.get("people_count").getAsInt(); String crowdName = root.get("crowd_name").getAsString(); String crowdId = root.get("crowd_id").getAsString(); String tip = root.get("tip").getAsString(); System.out.println("people_count: " + peopleCount + "\ncrowd_name: " + crowdName + "\ncrowd_id: " + crowdId + "\ntip: " + tip + '\n'); } catch (IOException ex) { Logger.getLogger("JSONTest").log(Level.SEVERE, null, ex); } finally { JsonObject jsonObject = new JsonObject(); JsonArray faceArray = new JsonArray(); JsonObject arrayElement = new JsonObject(); JsonObject attributeObject = new JsonObject(); attributeObject.addProperty("age", 19); attributeObject.addProperty("gender", "Female"); attributeObject.addProperty("lefteye_opendegree", 44); attributeObject.addProperty("righteye_opendegree", 39); attributeObject.addProperty("mouth_opendegree", 32); JsonObject poseObject = new JsonObject(); poseObject.addProperty("raise", -1); poseObject.addProperty("tilting", -7); poseObject.addProperty("turn", -3); attributeObject.add("pose", poseObject); arrayElement.add("attribute", attributeObject); arrayElement.addProperty("face_id", "dd6faefeb13a4dcebc14328891bdf6df"); JsonObject positionObject = new JsonObject(); JsonObject centerObject = new JsonObject(); centerObject.addProperty("x", 152); centerObject.addProperty("y", 92); positionObject.add("center", centerObject); JsonObject leftEyeObject = new JsonObject(); leftEyeObject.addProperty("x", 209); leftEyeObject.addProperty("y", 152); positionObject.add("eye_left", leftEyeObject); JsonObject rightEyeObject = new JsonObject(); rightEyeObject.addProperty("x", 312); rightEyeObject.addProperty("y", 151); positionObject.add("eye_right", rightEyeObject); positionObject.addProperty("width", 218); positionObject.addProperty("height", 218); arrayElement.add("position", positionObject); arrayElement.addProperty("tag", ""); faceArray.add(arrayElement); jsonObject.add("face", faceArray); jsonObject.addProperty("img_width", 537); jsonObject.addProperty("img_height", 480); jsonObject.addProperty("img_id", "020-334630e8948f3403"); jsonObject.addProperty("url", "http://www.eyekey.com/images/demo/BaiBaihe/2.jpg"); System.out.println(jsonObject); } } }
JSONString.txt
{ "people": [ { "people_name": "test people", "people_id": "22fd9efc64c87e00224c33dd8718eec7", "tip": "people test tip" } ], "people_count": 20, "crowd_name": "test", "crowd_id": "22fd9efc64c87e00224c33dd8718eec7", "tip": "test tip" }
GSON的简单示例的更多相关文章
- retrofit okhttp RxJava bk Gson Lambda 综合示例【配置】
项目地址:https://github.com/baiqiantao/retrofit2_okhttp3_RxJava_butterknife.git <uses-permission andr ...
- Java Json API:Gson使用简单入门
GSON是Google开发的Java API,用于转换Java对象和Json对象.本文讨论并提供了使用API的简单代码示例.更多关于GSON的API可以访问:http://sites.google.c ...
- Linux下的C Socket编程 -- server端的简单示例
Linux下的C Socket编程(三) server端的简单示例 经过前面的client端的学习,我们已经知道了如何创建socket,所以接下来就是去绑定他到具体的一个端口上面去. 绑定socket ...
- C# 构建XML(简单示例)
C# 构建XML的简单示例: var pars = new Dictionary<string, string> { {"url","https://www. ...
- 根据juery CSS点击一个标签弹出一个遮罩层的简单示例
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- ACEXML解析XML文件——简单示例程序
掌握了ACMXML库解析XML文件的方法后,下面来实现一个比较完整的程序. 定义基本结构 xml文件格式如下 <?xml version="1.0"?> <roo ...
- demo工程的清单文件及activity中api代码简单示例
第一步注册一个账户,并创建一个应用.获取app ID与 app Key. 第二步下载sdk 第三步新建工程,修改清单文件,导入相关的sdk文件及调用相应的api搞定. 3.1 修改清单文件,主要是加入 ...
- spring-servlet.xml简单示例
spring-servlet.xml简单示例 某个项目中的spring-servlet.xml 记下来以后研究用 <!-- springMVC简单配置 --> <?xml versi ...
- SignalR 简单示例
一.什么是 SignalR ASP.NET SignalR is a library for ASP.NET developers that simplifies the process of add ...
随机推荐
- BZOJ 3566 [SHOI2014]概率充电器 ——期望DP
期望DP. 补集转化,考虑不能被点亮的情况, 然后就是三种情况,自己不能亮,父亲不能点亮它,儿子不能点亮它. 第一次计算比较容易,第二次计算的时候需要出去第一次的影响,因为一条线只能传导一次 #inc ...
- 线程池的使用。好文。mark【http://blog.csdn.net/rwecho/article/details/21157289】
介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端执行一个异步任务你还只是如下new T ...
- 「CodePlus 2018 3 月赛」白金元首与莫斯科
$n \leq 17,m \leq 17$,$n*m$的01矩形,对每一个0问:当他单独变成1之后,在其他0处放多米诺牌(不一定放满,可以不放)的方案数.膜$1e9+7$. 直接$dp$是$n^42^ ...
- Redis命令行之List
一.Redis之List简介 1. List是简单的字符串列表,按照插入顺序排列. 2. 一个列表最多可存储232-1个元素(40多亿). 二.Redis之List命令行操作 Lrange:获取列表指 ...
- android的对话框
android中的对话框形式有四种,分别是一般对话框形式,列表对话框形式,单选按钮对话框,多选按钮对话框,下面我一一对他们进行详解. <一>一般对话框 一般对话框形式如下图: 具体实现代码 ...
- JFinal2.0极速开发视频教程发布【转】
原文:http://blog.dreamlu.net/blog/79 目前JFinal越来越火爆,而且使用的公司越来越多.鉴于市面上JFinal的学习资源不多,我们开始基于JFinal2.0录制学习视 ...
- 社区发现(Community Detection)算法
作者: peghoty 出处: http://blog.csdn.net/peghoty/article/details/9286905 社区发现(Community Detection)算法用来发现 ...
- Netty构建游戏服务器(一)--基本概念与原理
一,Netty是什么 1,Netty是由 JBOSS提供的一个 java开源框架. 2,Netty是JAR包,一般使用ALL-IN-ONE的JAR包就可以开发了. 3,Netty不需要运行在Tomca ...
- Java日志框架-Spring中使用Logback(Spring/Spring MVC)
继上一篇文章http://www.cnblogs.com/EasonJim/p/7800880.html中所集成的是基于Java的普通项目,如果要在Spring和Spring MVC上集成,需要做如下 ...
- ASP.NETCore使用AutoFac依赖注入
原文:ASP.NETCore使用AutoFac依赖注入 实现代码 1.新建接口类:IRepository.cs,规范各个操作类的都有那些方法,方便管理. using System; using Sys ...