`
qing393260529
  • 浏览: 46504 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

对象转换成JSON字符串

阅读更多

package com.sy.test;      


 import java.lang.reflect.Field;
 import java.util.ArrayList;
 import java.util.HashMap;

 
 
 /**
  * 提供将对象转换成JSON字符串的方法
  * @author       作者 黎青春
  * @version      版本 0.01
  * @filename     文件名 JSONUtil.java
  * @date         创建日期 Oct 10, 2009
  * @description  描述
  */
 public class JSONUtil {
   
  
 
 /**
  * 将一个对象转换成JSON字符串表示,该对象应该符合 JavaBean规范。
  * 如果对象的某个属性不是数字或字符串,该属性将被忽略,不会出现在JSON字符串中
  *
  * 方法名称:toJSON
  * 作者:黎青春
  * 创建日期:Oct 10, 2009
  * 方法描述: 
  * @param 要转换的对象
  * @return 描述该对象的JSON字符串,包括属性名与属性值
  */ 
 public static String toJSON(Object obj) {
 HashMap<String, String> map = new HashMap<String, String>();
 Class c = obj.getClass();
 Field[] fields = c.getDeclaredFields();
 for (int i = 0; i < fields.length; i++) {
 String name = fields[i].getName();
 try {
 fields[i].setAccessible(true);
 Object o = fields[i].get(obj);
 if (o instanceof Number) {
 map.put("\"" + name + "\"", o.toString());
 } else if (o instanceof String) {
 map.put("\"" + name + "\"", "\"" + o.toString() + "\"");
 }
 } catch (IllegalArgumentException e) {
 } catch (IllegalAccessException e) {
 }
 }
 String s = map.toString();
 String str = s.replaceAll("\"=", "\":");
 return str;
 }
 /**
  * 将一个对象数组转换成JSON字符串
  * 方法名称:toJSON
  * 作者:黎青春
  * 创建日期:Oct 10, 2009
  * 方法描述: 
  * @param 要转换的对象数组
  * @return 转换后得到的字符串
  */
 public static String toJSON(Object[] objs) {
 String[] strs = new String[objs.length];
 for (int i = 0; i < objs.length; i++) {
 strs[i] = toJSON(objs[i]);
 }
 return toJSONArray(strs);
 }
 /**
  * 将多个JSON字符串转换成一个JSON字符串,并加入一个标识长度的属性length
  * 方法名称:toJSONArray
  * 作者:黎青春
  * 创建日期:Oct 10, 2009
  * 方法描述: 
  * @param  要转换的多个JSON字符串
  * @return 完整的一个JSON字符串
  */
 public static String toJSONArray(String[] strs) {
 StringBuffer sb = new StringBuffer();
 sb.append("{");
 for (int i = 0; i < strs.length; i++) {
 sb.append("\"");
 sb.append(i);
 sb.append("\":");
 sb.append(strs[i]);
 sb.append(",");
 }
 sb.append("\"length\":");
 sb.append(strs.length);
 sb.append("}");
 return sb.toString();
 }

 /**
     * 测试
     *
     * @param args
     */
 @SuppressWarnings("unchecked")
 public static void main(String[] args) {
 User user = new User();
 user.setId("1234");
 user.setName("hahaha");
 user.setAge(21);

 User user1 = new User();
 user1.setId("5767");
 user1.setName("hehehe");
 user1.setAge(18);
    
 User[] users={user1,user};
 System.out.println(JSONUtil.toJSON(users));
 ArrayList list = new ArrayList();
 list.add(user);
 list.add(user1);
 // System.out.println(JSON.toJSON(user));
 System.out.println(JSONUtil.toJSON(list.toArray()));
 }
 }

 /**
 * 用来测试的类
 *
 * @author Bom Wu
 * @create Mar 13, 2009
 */
 class User {
 private String name;
 private String id;
 private int age;
 public int getAge() {
 return age;
 }
 public void setAge(int age) {
 this.age = age;
 }
 public String getId() {
 return id;
 }
 public void setId(String id) {
 this.id = id;
 }
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this.name = name;
 }
 }
  

分享到:
评论

相关推荐

    使用json-lib将java对象转换成json字符串

    标题中的“使用json-lib将java对象转换成json字符串”指的是在Java编程中,利用json-lib这个库来将Java对象转化为JSON格式的字符串。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端...

    java对象转换为json字符串或字符串数组

    在Java开发中,将Java对象转换为JSON字符串或字符串数组是一项常见的任务,特别是在与前端交互、数据存储或者网络传输时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也...

    提供将对象转换成JSON字符串的方法 (2).pdf

    标题中的“提供将对象转换成JSON字符串的方法 (2).pdf”指的是一个关于如何在Java编程中将对象转换为JSON格式的文档。描述中提到的是这个文档的更新日期和作者信息。标签“互联网”可能暗示了这个方法在Web开发或者...

    由php对象生成json字符串 把php对象变成json字符串.zip

    总的来说,将PHP对象转换为JSON字符串是通过json_encode()函数完成的,对于对象,可以考虑实现JsonSerializable接口或使用特定选项来控制序列化行为。在实际开发中,还要注意错误处理和编码选项的设置,以确保数据...

    Json对象与json字符串互相转换处理工具

    Json对象与json字符串互相转换处理工具

    将web Form 的数据转化成json字符串(带使用举例)

    * 将web Form 的数据转化成json字符串的函数 * howwa@sina.com 根据网上搜的资料修改而成 * 2011-5-14 * 将web Form 采集的数据转化成json字符串 * 传入web form对象 * 输出由form元素名称及其值组成的json字符串 *...

    对象转换成json字符串(包括jar包)

    把对象转换成json字符串的实例,包括单独的对象、List、对象和List混合。MyEclipse工程,里面包括五个Jar包:commons-beanutils-1.8.0.jar,commons-collections-3.2.1.jar,commons-lang-2.4.jar,commons-logging-...

    模仿json,根据对象生成json字符串,根据字符串生成对象

    以`com.google.gson`为例,我们需要创建一个`Gson`实例,然后调用`toJson()`方法将Java对象转换为JSON字符串。例如,我们有一个名为`Person`的类,包含`name`和`age`属性,可以这样做: ```java import ...

    json字符串转换c++类对象

    当需要将C++对象转换回JSON字符串时,可以使用`json`对象的`dump`方法: ```cpp std::string jsonStr = j.dump(); // 序列化为字符串 ``` 6. **注意事项**: - 检查JSON解析时的异常:`json::parse`会抛出异常...

    把对象转换为JSON字符串

    一个把对象转换为JSON字符串 把该DLL引入项目中就能使用了

    json2.js 字符串转转json对象工具

    2. `JSON.stringify()`方法则相反,它将JavaScript对象转换为JSON字符串。这对于需要将数据发送到服务器或者存储在本地(如localStorage)时非常有用。例如,`JSON.stringify({name: "John", age: 30})`会返回字符串...

    C# json格式解析,Json格式字符串与C#对象相互转换,类库+使用案例,注释详细

    /// 将Json字符串解析为C#中的对象 /// Json格式中的字符串值识别 /// 将Json字符串解析为Dictionary, dynamic&gt;对象。 /// 将Json字符串解析为dynamic[]对象。 /// Dictionary类型对象转换为Json格式字符串 /// C#...

    JSON 字符串 与 java 对象的转换

    `json-lib`是一个用于处理JSON的Java库,它可以将Java对象转换成JSON字符串,也可以将JSON字符串解析成Java对象。`json-lib`支持多种类型的Java对象,包括普通Java对象、集合类型等。 #### 三、环境准备 在使用`...

    js中的json对象和字符串之间的转化

    `JSON.stringify()`和`JSON.parse()`是两个关键的函数,它们分别用于将JavaScript对象转换成JSON字符串和将JSON字符串还原为JavaScript对象。在没有内置JSON支持的环境中,如老版本的浏览器,可以使用像`json2.js`...

    Java中Json字符串直接转换为对象的方法(包括多层List集合)

    本文将详细介绍如何将JSON字符串直接转换为Java对象,特别是涉及到多层List集合的情况。在本例中,我们将使用`net.sf.json.JSONObject`类来实现这一功能。 首先,确保你的项目中已经引入了必要的库。在使用`...

    json字符串转换插件

    在Java中,我们通常需要将这样的JSON字符串转换为Java对象,或者将Java对象转换为JSON字符串,以便于数据的序列化和反序列化。 以Gson库为例,它是Google提供的一个强大的JSON处理库。要在项目中使用Gson,首先需要...

    form数据与json对象的互相转换(完整版)

    * 将web Form 的数据转化成json字符串 * 将json对象的值解析后填入web Form 在AJAX开发中这是关键技术: 1、将form中的数据利用本工具转换成json格式的字符串,再通过ajax传给服务器,从而可以实现无刷新的form提交...

    androidmap转json字符串、list转json字符串工具类.zip

    本压缩包提供了两个关键功能:将Map对象转换为JSON字符串和将List对象转换为JSON字符串。这两个工具类对于Android开发者来说非常实用,因为它们简化了Java对象与JSON格式之间的互换过程。 首先,让我们详细了解Map...

    GSON包,JAVA对象和LIST转换成JSON字符串

    创建一个 Gson对象在调用其toJson方法将JAVA对象或集合转换成json字符串 Gson gson = new Gson(); String toJson = gson.toJson(Object o);

Global site tag (gtag.js) - Google Analytics