`
sgm881218
  • 浏览: 58475 次
社区版块
存档分类
最新评论

简单的JSON解析

阅读更多

用google-gson来解析json,jar包附件中

方法1:

import java.io.StringReader;
import com.google.gson.stream.JsonReader;

public class JsonUtils {
	public void parseJson(String jsonData){
		try{
			//如果需要解析JSON数据,首要要生成一个JsonReader对象
			JsonReader reader = new JsonReader(new StringReader(jsonData));
			reader.beginArray();
			while(reader.hasNext()){
				reader.beginObject();
				while(reader.hasNext()){
					String tagName = reader.nextName();
					if(tagName.equals("name")){
						System.out.println("name--->" + reader.nextString());
					}
					else if(tagName.equals("age")){
						System.out.println("age--->" + reader.nextInt());
					}
				}
				reader.endObject();
			}
			reader.endArray();
		}
		catch(Exception e){
			e.printStackTrace();
		}
	}
}

json就是字符串:
String jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]";

 方法2.1:把json转化为java对象(单个对象!)

要转化成的对象:

public class User {
	private String name ;
	private int age ;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
}

 解析:

import com.google.gson.Gson;


public class JsonUtils {
	
	public void parseUserFromJson(String jsonData){
		Gson gson = new Gson();
		User user = gson.fromJson(jsonData, User.class);
		System.out.println("name--->" + user.getName());
		System.out.println("age---->" + user.getAge());
		
	}
}

其中String jsonData = "{\"name\":\"Michael\",\"age\":20}";

 方法2.2:把json转化为java对象数组!

1.要转化成的对象还是上面的User类对象。

2.解析;

import java.lang.reflect.Type;
import java.util.Iterator;
import java.util.LinkedList;

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;


public class JsonUtils {
	
	public void parseUserFromJson(String jsonData){
		Type listType = new TypeToken<LinkedList<User>>(){}.getType();
		Gson gson = new Gson();
		LinkedList<User> users = gson.fromJson(jsonData, listType);
		for (Iterator iterator = users.iterator(); iterator.hasNext();) {
			User user = (User) iterator.next();
			System.out.println("name--->" + user.getName());
			System.out.println("age---->" + user.getAge());
		}
		
	}
}

 其中String jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]";

0
5
分享到:
评论

相关推荐

    简单json解析

    简单json解析通常包括以下步骤: 1. **创建JSON对象**:你可以使用`JSONObject`或`JSONArray`类创建JSON对象。例如: ```java JSONObject obj = new JSONObject(); obj.put("name", "John"); obj.put("age", 30...

    自己实现一个简单的JSON解析器

    本着探究 JSON 原理的目的,我将会在这DEMO中实现了一个简单的JSON解析器。由于 JSON 本身比较简单,解析起来也并不复杂。所以如果大家感兴趣的话,在看完本DEMO后,不妨自己动手实现一个 JSON 解析器。

    JSON 解析 示例代码

    总的来说,理解和掌握JSON解析是现代Web开发的基本技能之一。无论你是前端开发者还是后端开发者,都需要能够有效地读取、解析和生成JSON数据。通过学习和实践,你可以熟练地利用JSON这一强大的工具进行数据交换和...

    鬼脸JSON解析小工具forMac

    总之,"鬼脸JSON解析小工具forMac"是一款专为Mac用户打造的高效JSON解析应用,它的存在使得处理JSON数据变得更加简单和愉快。无论是前端开发者调试接口,还是后端工程师分析返回结果,都能从中受益。通过其便捷的...

    Unity能够在WebGL包使用的json解析.dll

    Unity的JsonUtility类虽然功能相对简单,但足以满足大部分基本的JSON解析和序列化需求。对于更复杂的情况,可能需要依赖于专门为Unity优化的第三方库。 在使用任何DLL,特别是System.Web.Extensions这样的.NET组件...

    易语言页面订单json解析

    3. **JSON解析**:易语言提供了JSON解析的库或模块,允许我们解析JSON字符串为易语言的数据结构,如数组或字典。解析过程中,我们需要识别并提取出订单的关键信息,如订单ID、客户信息、商品详情等。 4. **将订单...

    最简单最高效的Json解析

    为了实现最简单高效的JSON解析,我们需要考虑以下几个方面: 1. **错误处理**:在解析过程中,确保捕获可能的异常,如无效的JSON格式,这可以通过使用try-catch语句来实现。 2. **内存效率**:避免一次性加载大量...

    简单json解析,httpclient免证书校验

    对于"简单json解析",通常涉及以下步骤: 1. **创建JSON对象**:可以创建一个JSONObject或JSONArray,通过键值对的方式存储数据。 2. **序列化**:将Java对象转换为JSON字符串,便于在网络间传输或存储。 3. **反...

    c#利用Newtonsoft.Json解析json(带数组)

    Newtonsoft.Json库会自动处理这些结构,使解析过程变得简单直观。 除了`DeserializeObject`,还有其他几个用于解析JSON的方法,如`JObject.Parse`和`JArray.Parse`,它们返回的是Json.NET的动态类型,可以用于处理...

    JSON解析demo.zip

    在Android开发中,JSON解析是至关重要的,因为很多API接口返回的数据都是JSON格式。 在Android中,我们可以使用多种库来解析JSON数据,如`org.json`库(内置于Android SDK)、Gson库、Jackson库以及FastJson库等。...

    kettle解析json串

    ### Kettle与JSON解析概述 #### 1. **Kettle简介** - Kettle(Pentaho Data Integration,简称PDI)是一款开源的数据集成工具,广泛用于ETL(Extract-Transform-Load)任务。 - Kettle支持多种数据源,包括关系型...

    最全的 json解析JAR包

    本篇将详细介绍JSON解析相关的知识点,并针对"最全的json解析JAR包"进行解析。 1. JSON基本结构: JSON基于JavaScript的一个子集,主要由对象(Object)和数组(Array)两种数据结构组成。对象是键值对的集合,用...

    json-c 一个用于c语言的json解析库,很强大

    总之,`json-c`是一个强大的JSON解析库,它为C语言程序员提供了处理JSON数据的便捷工具,无论是解析接收到的网络数据,还是生成要发送的数据,都变得简单易行。通过深入理解和熟练使用`json-c`库,开发者可以在C程序...

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

    `com.force.json`是一个针对.NET平台的高性能JSON库,由Salesforce公司开发,它提供了快速且内存效率高的JSON解析和生成功能。这个库适用于那些需要高效处理大量JSON数据的应用场景。 首先,我们需要了解JSON的基本...

    json解析_简单的练习

    在"json解析_简单的练习"这个主题中,我们主要关注如何在Android环境下对JSON进行解析。文件列表中包含了`MainActivity(oa 通知公告json).java`,这表明我们将使用Java编程语言,特别是Android SDK中的相关库来...

    FJSON 开源JSON解析器

    《FJSON:轻量级的开源JSON解析器》 在当今的软件开发中,JSON(JavaScript Object Notation)已经成为数据交换格式的首选,其简洁明了的语法使得它在各种编程语言中的应用广泛。FJSON是一款针对.NET平台的开源JSON...

    json解析个人案例

    在“json解析个人案例”中,我们可以探讨以下几个关键知识点: 1. JSON结构:JSON数据以键值对(key-value pairs)的形式存在,键用双引号包围,值可以是字符串、数字、布尔值、数组、对象或null。例如: ```json {...

    json 解析jar包

    这个"json解析jar包"很可能就是Gson库的jar文件,名为"gson-2.2.4.jar"。 Gson库提供了强大的功能,使得JSON和Java对象之间的转换变得非常简单。以下是一些关于如何使用Gson进行JSON解析和序列化的知识点: 1. **...

    一种简单的json解析方法

    然而,对于简单的JSON解析,我们可以编写自定义的简单函数来实现。本篇文章将介绍一种基于Java的基本JSON解析方法,通过提供的`JsonUtil.java`、`BeanUtil.java`和`AjaxResponse.java`三个文件,我们可以看到如何...

    JSON解析助手exe

    "JSON解析助手exe"是一个专门用于帮助用户解析和处理JSON数据的工具,尤其对于开发人员来说,它提供了便捷的方式来查看、操作和验证JSON结构。 JSON格式的基本结构包括对象(Object)和数组(Array)。对象是以大...

Global site tag (gtag.js) - Google Analytics