下载

到http://json-lib.sourceforge.net下载json-lib-1.1-jdk15.jar,运行json还需要的包有:commons-lang.jar、commons-logging.jar,commons-beanutils.jar、xom-1.0-2005-01-05.jar、ezmorph-1.0.1.jar,可在http://www.docjar.com搜索下载。

l         转化数组和集合

boolean[] boolArray = new boolean[]{true,false,true};

JSONArray jsonArray = JSONArray.fromObject(boolArray);

System.out.println(jsonArray);

输出:[true,false,true]

List list = new ArrayList();

list.add(“第一个”);

list.add(“第二个”);

JSONArray jsonArray = JSONArray.fromObject(list);

System.out.println(jsonArray);

输出:[“第一个”, “第二个”]

JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']");

System.out.println(jsonArray3);

输出:[“json”, “is”, “'easy'”]

l         转化对象

转化Map

Map map = new HashMap();

map.put("name","json");

map.put("bool",Boolean.TRUE);

map.put("int",new Integer(1));

map.put("arr",new String[]{"a","b"});

map.put("func","function(i){return this.arr[i];}");

JSONObject json = JSONObject.fromObject(map);

System.out.println(json);

输出:[“name”: “json”, “bool”:true, “int”,1, “arr”:[ “a”, “b”], “func”:function(i){return this.arr[i];}]

转化Bean

MyBean.java

public class MyBean {

private String name = "json";

private int pojoId = 1;

private String func1 = "function(i){return this.options[i]}";

private JSONFunction func2 = new JSONFunction(new String[]{"i"},"return this.options[i];");

//以下为get、set方法

}

MyBean bean = new MyBean();

JSONObject jsonObject = JSONObject.fromObject(bean);

System.out.println(jsonObject);

输出:

{"func1":function(i){return this.options[i]},"pojoId":1,"name":"json","func2":function(i){ return this.options[i]; }

从JSON到Beans

//转化为动态bean

String myjson = "{name=""json"",bool:true,int:1,double:2.2,function:function(a){return a;},array:[1,2]}";

JSONObject json1 = JSONObject.fromString(myjson);

Object bean1 = JSONObject.toBean(json1);

由JSON生成XML

JSONObject json = new JSONObject(true);

XMLSerializer xmlSerializer = new XMLSerializer();

String xml = xmlSerializer.write(json);

System.out.println("xml:" + xml);

输出:xml:<?xml version="1.0" encoding="UTF-8"?>

<o null="true"/>

JSONObject json2 = JSONObject.fromObject("{""name"":""json"",""bool"":true,""int"":1}");

String xml2 = xmlSerializer.write(json2);

System.out.println("xml2:" + xml2);

输出:xml2:<?xml version="1.0" encoding="UTF-8"?>

<o><bool type="boolean">true</bool><int type="number">1</int><name type="string">json</name></o>

JSONArray json3 = JSONArray.fromObject("[1,2,3]");

String xml3 = xmlSerializer.write(json3);

System.out.println("xml3:" + xml3);

输出:xml3:<?xml version="1.0" encoding="UTF-8"?>

<a><e type="number">1</e><e type="number">2</e><e type="number">3</e></a>

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xueyepiaoling/archive/2011/02/24/6204374.aspx

转载于:https://www.cnblogs.com/joly-han/archive/2011/06/17/2083742.html

(转)使用json-lib 数据格式转换相关推荐

  1. 使用python开发json、csv数据格式转换工具

    使用python开发json.csv数据格式转换工具 json和xml是业界常用的数据格式,而游戏行业经常使用csv配表,包括本地化文本和数值.本文介绍csv和json序列化.逆序列化相关的pytho ...

  2. java数据文本格式转换_SpringMVC中Json数据格式转换

    1  @RequestBody 作用: @RequestBody注解用于读取http请求的内容(字符串),通过springmvc提供的HttpMessageConverter接口将读到的内容转换为js ...

  3. 目标检测中的数据格式转换工具Roboflow

    目标检测中的数据格式转换工具.Roboflow Roboflow提供了您需要的所有工具,将原始图像转换为定制的训练有素的计算机视觉模型,并部署它在您的应用程序中使用. Roboflow支持检测目标和分 ...

  4. Atitit.json类库的设计与实现 ati json lib

    Atitit.json类库的设计与实现 ati json lib 1. 目前jsonlib库可能有问题,可能版本冲突,抛出ex1 2. 解决之道:1 2.1. 自定义json解析库,使用多个复合的js ...

  5. 使用JsonConfig控制JSON lib序列化

    原文  http://www.yshjava.cn/post/546.html 将对象转换成字符串,是非常常用的功能,尤其在WEB应用中,使用 JSON lib 能够便捷地完成这项工作.JSON li ...

  6. alibaba 实体转json_JAVA中使用alibaba fastjson实现JSONObject、Object、Json字符串的转换...

    Object转JSON字符串: String jsonStr = JSONObject.toJSONString(object); JSON字符串转JSONObject: JSONObject jso ...

  7. python结合ogr2ogr之地理数据格式转换-1

    前面写过一篇公众号文章,当时为了能将矢量CAD数据转换成kml,找到了一个开源的.net库netdxf,该库支持dxf文件直接读写,方便快捷: DXF转KML-1http://mp.weixin.qq ...

  8. R语言数据格式转换函数、数据类型判断函数(numeric、character、vector、matrix、data.frame、factor、logical)、R语言数据格式类型转换

    R语言数据格式转换函数.数据类型判断函数(numeric数值.character字符串.vector向量.matrix矩阵.data.frame数据表.factor因子.logical逻辑).R语言数 ...

  9. Python读取多个excel文件(删除字段、数据格式转换、dataframe多表合并)并写入ElasticSearch实战(自动创建索引、写入ElasticSearch、探索性数据分析)

    Python读取多个excel文件(删除字段.数据格式转换.dataframe多表合并)并写入ElasticSearch实战(自动创建索引.写入ElasticSearch.探索性数据分析) 目录

  10. 把json对象串转换成map对象

    2019独角兽企业重金招聘Python工程师标准>>> /**    * nc只支持简单的   * 把json对象串转换成map对象    * @param jsonObjStr e ...

最新文章

  1. python 操作word页眉表格_python批量设置多个Excel文件页眉页脚的脚本
  2. C#Socket编程详解(一)TCP与UDP简介
  3. [HDOJ3998] Sequence(DP,最大流)
  4. 从Notes迁移到Exchange Server 2010 之三
  5. hdu_1861_游船出租_201402282130
  6. .NET 6新特性试用 | LINQ功能改进
  7. MyBatis_1 简介
  8. gromacs 安装_带你入门带你飞 gromacs材料计算模拟系列
  9. SQL Server 数据库构架
  10. hive - 可优化的 10 个地方及详解
  11. mybatis批量插入数据到Oracle中的两种方式
  12. 一次性医用外科手套行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  13. sql 更新一些特殊要求字段(批量)
  14. laravel Ajax请求 X-CSRF验证问题
  15. 顺序栈的实验报告c语言,顺序栈的基本操作(C语言)
  16. android studio翻译插件Translation使用。。
  17. windows平台HTTP代理服务器搭建(CCproxy)
  18. ie打开本地html页面慢,win7使用ie浏览器访问网页显示缓慢、卡死的解决方法
  19. 计算机开机长响一声,电脑开机一声长响三声短响是什么原因?
  20. 新手如何租用阿里云服务器(图文教程)

热门文章

  1. xp版php,PHP5.3以后的版本如何在XP中安装
  2. android布局layout,Android布局(FrameLayout、GridLayout)
  3. 策划文档html,html代码整理.doc
  4. Linux timer调用流程图,Linux应用层的定时器Timer使用详解【转】
  5. 神策数据王磊:如何用 JS 实现页面录制与回放
  6. 跑步碰撞大数据,走进悦跑圈的数据“大观园”
  7. 案例 | 日活提升 50%,海尔智慧厨房平台如何引领行业革命?
  8. linux--监控系统之Zabbix简介(二)
  9. python 中的queue, deque
  10. oracle对象之存储函数