`

JSONObject以及json串

阅读更多

一.JAR包简介

    要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:

    1.commons-lang-2.0.jar

    2.commons-beanutils-1.7.0.jar

    3.commons-collections-3.1.jar

    4.commons-logging-1.1.1.jar

    5.ezmorph-1.0.1.jar

    6.json-lib-2.2.2-jdk15.jar

      

二.JSONObject对象使用

    JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用 JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。

package com.bijian.json.study;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JSONObjectSample {

	// 创建JSONObject对象
	private static JSONObject createJSONObject() {
		JSONObject jsonObject = new JSONObject();
		jsonObject.put("name", "kevin");
		jsonObject.put("Max.score", new Integer(100));
		jsonObject.put("Min.score", new Integer(50));
		jsonObject.put("nickname", "picglet");
		return jsonObject;
	}

	public static void main(String[] args) {
		
		JSONObject jsonObject = JSONObjectSample.createJSONObject();
		// 输出jsonobject对象
		System.out.println("jsonObject==>" + jsonObject);
		//jsonObject==>{"name":"kevin","Max.score":100,"Min.score":50,"nickname":"picglet"}

		// 判读输出对象的类型
		boolean isArray = jsonObject.isArray();
		boolean isEmpty = jsonObject.isEmpty();
		boolean isNullObject = jsonObject.isNullObject();
		System.out.println("isArray:" + isArray + " isEmpty:" + isEmpty + " isNullObject:" + isNullObject);
		//isArray:false isEmpty:false isNullObject:false
		
		// 添加属性
		jsonObject.element("address", "swap lake");
		System.out.println("添加属性后的对象==>" + jsonObject);
		//添加属性后的对象==>{"name":"kevin","Max.score":100,"Min.score":50,"nickname":"picglet","address":"swap lake"}

		// 返回一个JSONArray对象
		JSONArray jsonArray = new JSONArray();
		jsonArray.add(0, "this is a jsonArray value");
		jsonArray.add(1, "another jsonArray value");
		jsonObject.element("jsonArray", jsonArray);
		JSONArray array = jsonObject.getJSONArray("jsonArray");
		System.out.println("返回一个JSONArray对象:" + array);
		//返回一个JSONArray对象:["this is a jsonArray value","another jsonArray value"]
		
		System.out.println(jsonObject);
		//{"name":"kevin","Max.score":100,"Min.score":50,"nickname":"picglet","address":"swap lake","jsonArray":["this is a jsonArray value","another jsonArray value"]}

		// 根据key返回一个字符串
		String jsonString = jsonObject.getString("name");
		System.out.println("jsonString==>" + jsonString);
		//jsonString==>kevin
	}
}

运行结果:

jsonObject==>{"name":"kevin","Max.score":100,"Min.score":50,"nickname":"picglet"}
isArray:false isEmpty:false isNullObject:false
添加属性后的对象==>{"name":"kevin","Max.score":100,"Min.score":50,"nickname":"picglet","address":"swap lake"}
返回一个JSONArray对象:["this is a jsonArray value","another jsonArray value"]
{"name":"kevin","Max.score":100,"Min.score":50,"nickname":"picglet","address":"swap lake","jsonArray":["this is a jsonArray value","another jsonArray value"]}
jsonString==>kevin

        得到JSONObject对象后我们就可以使用它的方法了,可以查看其API,我给出一个在线的API地址:http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/json/JSONObject.html

 

PS:commons-collections-1.0.jar运行过程中出现如下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap

后换commons-collections-3.1.jar,问题解决。

 

文章来源:http://hybxiaodao.iteye.com/blog/1107651

附一个JAR下载地址:http://www.findjar.com/index.x

分享到:
评论

相关推荐

    使用JSONObject解析json数据

    `JSONObject`代表一个JSON对象,它是由键值对组成的,键必须是字符串,而值可以是各种JSON类型:字符串、数字、布尔值、数组(`JSONArray`)、其他`JSONObject`或`null`。在Java中,`JSONObject`类提供了丰富的API来...

    net.sf.json.JSONObject实现Object对象与Json字符串的互转

    `JSONObject`可以从一个Java对象创建,也可以解析为一个JSON字符串。例如,我们有一个简单的Java对象: ```java public class User { private String name; private int age; // getters and setters } ``` 要...

    用于java对象与json对象间的相互转换(net.sf.json.JSONObject)

    当你从服务器获取或从文件读取到一个JSON字符串时,可以使用`JSONObject`将其解析为可操作的对象。以下是如何进行解析的示例: ```java import net.sf.json.JSONObject; String jsonString = "{\"name\":\"张三\",...

    JSONObject解析json,C# asp.net JSON解析 com.force.json

    在这个例子中,我们使用`JSONObject.Parse`方法解析JSON字符串,并通过键来获取对应的值。注意类型转换,因为`JSONObject`中的值默认为`dynamic`类型,我们需要显式转换为实际类型。 此外,`com.force.json`还支持...

    org.json.JSONObject引用依赖包

    除了`JSONObject`,`org.json`包还提供了其他类,如`JSONArray`用于处理JSON数组,`JSONStringer`和`JSONWriter`用于构建复杂的JSON结构,以及`JSONException`用于捕获处理JSON时可能出现的异常。这些工具类使得...

    java转json串的几种方法

    2. **通过JSONObject生成json串** 如果你已经有了一个Map对象,你可以创建一个`JSONObject`,然后使用`toJSONString()`方法将其转换为JSON字符串。例如: ```java Map, Object> map = new HashMap(); map.put(...

    org.json.JSONObject 包下载

    - `toString()`方法将JSONObject转换为JSON格式的字符串。 - `toMap()`方法将JSONObject转换为Java的Map对象。 8. 与其他数据结构交互: - 可以将JSONObject序列化为文件或网络流,或者反序列化从这些来源读取。...

    JSONObject java解析json需要的jar包和依赖包

    可以将`JSONObject`对象转换回JSON字符串,或者将JSON字符串解析为`JSONObject`: ```java String jsonStringAgain = jsonObject.toString(); JSONObject jsonObjectAgain = new JSONObject(jsonStringAgain); ...

    利用Google Gson实现JSON字符串和对象之间相互转换

    Google Gson库提供了一个强大的工具,使得Java对象与JSON字符串之间的转换变得简单易行。本文将详细介绍如何利用Google Gson库进行JSON字符串与对象之间的相互转换。 首先,我们需要了解Gson的核心概念。Gson库通过...

    JSON字符串转换JSONObject和JSONArray的方法

    一.下载json 具体到http://www.json.org/上找Java-json下载,并把其放到项目源...//将字符串转换成jsonObject对象 JSONObject myJsonObject = new JSONObject(jsonMessage); //获取对应的值 value1 = myJsonObject.g

    net.sf.json.JSONObject相关jar包.zip

    2. **解析JSON字符串**:`JSONObject jsonObject = JSONObject.fromObject(jsonString);` 这将把JSON字符串转换为JSONObject对象。 3. **获取值**:使用get()方法可以获取存储的值,如 `String value = jsonObject....

    JsonObject Newtonsoft.Json.Net20

    1. **序列化和反序列化**:Json.NET 可以轻松地将.NET对象转换为JSON字符串,以及将JSON字符串解析成.NET对象。这对于数据交换和持久化非常有用。 2. **LINQ to JSON**:通过提供`JObject`、`JArray`等类型,Json...

    简封Volley、Gson和JsonObject生成Json数据、添加Volley请求头体Json参数、Gson解析返回的Json

    本教程将详细介绍如何使用Volley进行网络请求,如何封装Volley以提高复用性,以及如何配合Gson处理JSON数据。 首先,Volley提供了一个强大的HTTP客户端,支持异步请求,并且内置了缓存机制,可以显著提升应用的性能...

    JSONObject生成的json的架包

    1. **org.json**:这是一个小型、开源的Java库,提供了JSONObject类,用于创建和操作JSON对象。例如,你可以使用`new JSONObject()`创建一个空的JSONObject,然后通过`put()`方法添加键值对。 2. **com.google.gson...

    kettle解析json串

    根据提供的信息,我们可以深入探讨如何在Kettle中解析JSON串,并连接数据库进行数据处理。本文将详细介绍使用Java库解析JSON的基本方法以及如何在Kettle环境中实现这一过程。 ### Kettle与JSON解析概述 #### 1. **...

    net.sf.json.JsonObject需要的jar包

    `net.sf.json.JSONObject` 是json-lib中的核心类,它允许你将Java对象转换为JSON表示,并反之将JSON字符串解析为Java对象。这极大地简化了数据的序列化和反序列化过程。例如,你可以将一个HashMap转换为JSON对象,...

    Jackson将json string转为Object,org.json读取json数组的实例

    描述中提到了一个实例,也就是使用Jackson库将JSON字符串转换为Java对象(Map),然后使用org.json库读取JSON数组。实例中说明了遇到的困难,即在使用Map读取第一级数据之后,尝试读取数组中的特定值时遇到了问题,...

Global site tag (gtag.js) - Google Analytics