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字符串”指的是在Java编程中,利用json-lib这个库来将Java对象转化为JSON格式的字符串。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端...
在Java开发中,将Java对象转换为JSON字符串或字符串数组是一项常见的任务,特别是在与前端交互、数据存储或者网络传输时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也...
标题中的“提供将对象转换成JSON字符串的方法 (2).pdf”指的是一个关于如何在Java编程中将对象转换为JSON格式的文档。描述中提到的是这个文档的更新日期和作者信息。标签“互联网”可能暗示了这个方法在Web开发或者...
总的来说,将PHP对象转换为JSON字符串是通过json_encode()函数完成的,对于对象,可以考虑实现JsonSerializable接口或使用特定选项来控制序列化行为。在实际开发中,还要注意错误处理和编码选项的设置,以确保数据...
Json对象与json字符串互相转换处理工具
* 将web Form 的数据转化成json字符串的函数 * howwa@sina.com 根据网上搜的资料修改而成 * 2011-5-14 * 将web Form 采集的数据转化成json字符串 * 传入web form对象 * 输出由form元素名称及其值组成的json字符串 *...
把对象转换成json字符串的实例,包括单独的对象、List、对象和List混合。MyEclipse工程,里面包括五个Jar包:commons-beanutils-1.8.0.jar,commons-collections-3.2.1.jar,commons-lang-2.4.jar,commons-logging-...
以`com.google.gson`为例,我们需要创建一个`Gson`实例,然后调用`toJson()`方法将Java对象转换为JSON字符串。例如,我们有一个名为`Person`的类,包含`name`和`age`属性,可以这样做: ```java import ...
当需要将C++对象转换回JSON字符串时,可以使用`json`对象的`dump`方法: ```cpp std::string jsonStr = j.dump(); // 序列化为字符串 ``` 6. **注意事项**: - 检查JSON解析时的异常:`json::parse`会抛出异常...
一个把对象转换为JSON字符串 把该DLL引入项目中就能使用了
2. `JSON.stringify()`方法则相反,它将JavaScript对象转换为JSON字符串。这对于需要将数据发送到服务器或者存储在本地(如localStorage)时非常有用。例如,`JSON.stringify({name: "John", age: 30})`会返回字符串...
/// 将Json字符串解析为C#中的对象 /// Json格式中的字符串值识别 /// 将Json字符串解析为Dictionary, dynamic>对象。 /// 将Json字符串解析为dynamic[]对象。 /// Dictionary类型对象转换为Json格式字符串 /// C#...
`json-lib`是一个用于处理JSON的Java库,它可以将Java对象转换成JSON字符串,也可以将JSON字符串解析成Java对象。`json-lib`支持多种类型的Java对象,包括普通Java对象、集合类型等。 #### 三、环境准备 在使用`...
`JSON.stringify()`和`JSON.parse()`是两个关键的函数,它们分别用于将JavaScript对象转换成JSON字符串和将JSON字符串还原为JavaScript对象。在没有内置JSON支持的环境中,如老版本的浏览器,可以使用像`json2.js`...
在Java中,我们通常需要将这样的JSON字符串转换为Java对象,或者将Java对象转换为JSON字符串,以便于数据的序列化和反序列化。 以Gson库为例,它是Google提供的一个强大的JSON处理库。要在项目中使用Gson,首先需要...
本文将详细介绍如何将JSON字符串直接转换为Java对象,特别是涉及到多层List集合的情况。在本例中,我们将使用`net.sf.json.JSONObject`类来实现这一功能。 首先,确保你的项目中已经引入了必要的库。在使用`...
本压缩包提供了两个关键功能:将Map对象转换为JSON字符串和将List对象转换为JSON字符串。这两个工具类对于Android开发者来说非常实用,因为它们简化了Java对象与JSON格式之间的互换过程。 首先,让我们详细了解Map...
创建一个 Gson对象在调用其toJson方法将JAVA对象或集合转换成json字符串 Gson gson = new Gson(); String toJson = gson.toJson(Object o);
总结来说,将string类型的XML字符串转换为JSON字符串是通过解析XML字符串并构建相应的JSON对象来完成的。这个过程通常需要借助特定的库,如Java中的`org.json`。理解XML和JSON的结构差异,以及如何利用这些库进行...