【第6篇】使用Json-lib的XMLSerializer的write和reader操作json数据和xml
2015-01-18 20:32
357 查看
package ivyy.taobao.com.domain.jsonlib; import ivyy.taobao.com.entity.Student; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import net.sf.json.JSONSerializer; import net.sf.json.xml.XMLSerializer; /** *@DEMO:json *@Java:JsonXMLSerializer.java *@Date:2015-1-18下午7:04:04 *@Author:liangjilong *@Email:jilongliang@sina.com *@Weibo:http://weibo.com/jilongliang *@Version:1.0 *@Description:使用Json-lib的XMLSerializer的write和reader操作json数据和xml *需要導入xom-1.1.jar包 */ public class JsonXMLSerializer { //创建一个XMLSerializer对象 public static XMLSerializer serializer = new XMLSerializer(); public static void main(String[] args) { //writeXML(); readerXML(); } /*** * XMLSerializer的write与Json转成xml的使用 */ public static void writeXML() { Object2XML(); String2Json(); Strings2XML(); Booleans2XML(); Objects2JSONArray(); } /** * 布尔数组转成XML */ public static void Booleans2XML(){ //布尔数组转成XML System.out.println("==============Java boolean Array >>> XML =================="); boolean[] booleans = { true, false, true }; System.out.println(serializer.write(JSONArray.fromObject(booleans))); System.out.println(serializer.write(JSONSerializer.toJSON(booleans))); } /** * 对象数组转成json数组 */ public static void Objects2JSONArray(){ System.out.println("==============Java Object Array >>> JSON Array =================="); boolean[] booleans = { true, false, true }; String[] strs = {"令狐冲", "东升布艺", "周伯通"}; Object[] objs = { 1, "令狐冲", true, "周伯通", strs, booleans }; System.out.println(serializer.write(JSONArray.fromObject(objs))); System.out.println(serializer.write(JSONSerializer.toJSON(objs))); } /** * /字符串轉換成json */ private static void String2Json() { //字符串轉換成json System.out.println("==============Java String >>> JSON =================="); System.out.println(serializer.write(JSONArray.fromObject("['令狐冲','是','武林盟主']")).toString()); System.out.println(serializer.write(JSONObject.fromObject("{'令狐冲':'是 武林盟主'}")).toString()); System.out.println(serializer.write(JSONSerializer.toJSON("['令狐冲','是','武林盟主']")).toString()); } /*** * 字符串数组转成XML * @return */ private static void Strings2XML() { System.out.println("==============Java String Array >>> XML =================="); //字符串数组转成XML String[] strs = {"令狐冲", "东升布艺", "周伯通"}; System.out.println(serializer.write(JSONArray.fromObject(strs))); } /*** *对象转XML */ private static void Object2XML() { //对象转XML System.out.println("==============Java Object >>> XML =================="); Student stu=new Student(); stu.setAddress("廣東省雲浮市聞鶯路東升布藝"); stu.setUserName("東升布藝"); stu.setEmail("jilongliang@sina.com"); serializer.setElementName("stu"); System.out.println(serializer.write(JSONArray.fromObject(stu))); } /** * * json-lib的XMLSerializer的read使用 * json-lib的xml必须有一个对象obj(Object)节点包含里面的节点 * 如: * <obj> * <student type="string"> * <age>198</age> * <username>东方不败</username> * </student> * <student type="string"> * <age>198</age> * <username>周伯通</username> * </student> * </obj> * */ public static void readerXML(){ String xml="";// StringBuffer buffer=new StringBuffer(); buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); buffer.append("<obj>"); buffer.append("<stu type=\"string\">令狐冲</stu>"); buffer.append("<stu type=\"string\">东升布艺</stu>"); buffer.append("<stu type=\"string\">周伯通</stu>"); buffer.append("</obj>"); xml=buffer.toString(); JSONArray jarr = (JSONArray) serializer.read(xml); for (int i = 0; i < jarr.size(); i++) { System.out.println(jarr.get(i));//获取出数组的数据 } } }
package ivyy.taobao.com.entity; import java.io.Serializable; /** *@Author:liangjl *@Date:2014-12-19 *@Version:1.0 *@Description: */ public class Student implements Serializable{ private Integer age; private String sex; private String userName; private String birthday; private String address; private String email; public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getBirthday() { return birthday; } public void setBirthday(String birthday) { this.birthday = birthday; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } }
相关文章推荐
- 数据库操作_连接SQL Server数据库示例;连接ACCESS数据库;连接到 Oracle 数据库示例;SqlCommand 执行SQL命令示例;SqlDataReader 读取数据示例;使用DataAdapter填充数据到DataSet;使用DataTable存储数据库表;将数据库数据填充到 XML 文件;10 使用带输入参数的存储过程;11 使用带输入、输出参数的存储过程示;12 获得数据库中表的数目和名称;13 保存图片到SQL Server数据库示例;14 获得插入记录标识号;Exce
- 使用JQuery的Ajax操作html,xml,json数据
- Extjs 数据读取对象ArrayReader/JsonReader/XmlReader
- 使用jdom操作xml数据,生成含Jtree的applet
- 使用json-lib来处理数据(配合jquery)
- 使用json-lib 数据格式转换
- SQLSERVER 2005中使用sql语句对xml文件和其数据的进行操作(很全面)
- 使用jQuery操作简单的JSON数据
- as殿堂之路 使用运算符操作xml数据
- [转]flex中使用corelib ActionScript 3 Library sdk包解析json数据
- flex中使用corelib ActionScript 3 Library sdk包解析json数据
- 提交数据使用json代替xml
- Android中使用XmlSerializer拼装XML数据
- SQL SERVER 2005中使用sql语句对xml 文件和其数据的进行操作(很全面)
- C#不使用DataSet操作XML,XmlDocument读写xml所有节点及读取xml节点的数据总结
- 使用Ext.Extend:使用Ext的JsonReader读取本地数据实现grid分页
- 使用jdom操作xml数据,生成含Jtree的applet(转载 Jagie 原创 )
- 真实世界的 XML:使用 .NET 框架中集成的读取器和写入器很容易操作 XML 数据
- Android中使用XmlSerializer拼装XML数据
- 在 Android 应用程序中使用 Internet 数据 解析 XML、JSON 和 protocol buffers 数据