package test; import java.beans.XMLDecoder; import java.beans.XMLEncoder; import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.UnsupportedEncodingException; public class Object2XML { /** * 对象输到XML文件 * * @param obj * 待输出的对象 * @param outFileName * 目标XML文件的文件名 * @return 返回输出XML文件的路径 * @throws FileNotFoundException * @throws UnsupportedEncodingException */ public static String object2XML(Object obj, String outFileName) throws FileNotFoundException, UnsupportedEncodingException { // 构造输出XML文件的字节输出流 File outFile = new File(outFileName); // BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(outFile)); ByteArrayOutputStream bos = new ByteArrayOutputStream(); XMLEncoder xmlEncoder = new XMLEncoder(bos);// 构造一个XML编辑器 xmlEncoder.writeObject(obj);// 使用XML编码器写对象 xmlEncoder.close();// 关闭编码器 return new String(bos.toByteArray(),"utf-8"); } /** * 把XML文件解码成对象 * * @param inFileName输入的XML文件 * @return 返回生成的对象 * @throws FileNotFoundException */ public static Object xml2Object(String inFileName) throws FileNotFoundException { // 构造输入的XML文件的字节输入流 BufferedInputStream bis = new BufferedInputStream(new FileInputStream(inFileName)); XMLDecoder xmlDecoder = new XMLDecoder(bis);// 构造一个XML解码器 Object obj = xmlDecoder.readObject();// 使用XML解码器读对象 xmlDecoder.close();// 关闭解码器 return obj; } public static void main(String[] args) throws Exception { // 构造一个StudentBean对象 // StudentBean student = new StudentBean(); // student.setName("wangwu"); // student.setGender("male"); // student.setAge(15); // student.setPhone("55556666"); // // // 将StudentBean对象写到XML文件 // String fileName = "AStudent.xml"; // String s = Object2XML.object2XML(student, fileName); // // System.out.println(s); // // 从XML文件读StudentBean对象 // StudentBean aStudent = (StudentBean) Object2XML.xml2Object(fileName); // System.out.println(aStudent.toString()); BenefitDataResponse response = new BenefitDataResponse(); response.setCode("111111111111111111111111111111111"); response.setName("我我我我我我我我我我我我我我我我我我"); String s = "afasfd@af2asfd@afas3fd@afa4sfd@afa4sfd@afa5sfd"; response.setVal(s.split("@")); String fileName = "AStudent.xml"; String ss = Object2XML.object2XML(response, fileName); System.out.println(ss); } }
相关推荐
本篇将详细探讨这个主题,讲解如何使用Java进行XML与对象的互转。 一、Java对象转XML 1. **JAXB**(Java Architecture for XML Binding):这是Java标准API,用于将Java对象映射到XML文档,反之亦然。使用JAXB,我们...
主要用于开发中常见的xml与javabean之间的数据互转,减少重复代码的编写,支持xml对应字段中的集合数据类型(只能为list)。现不支持bean转换成xml时不指定字段所对应xml元素结点名称的情况,所有的字段必需指定生成...
本示例涉及的核心知识点是将Java中的List对象与XML文档进行相互转换。这里,我们使用的库是dom4j-1.6.1.jar,这是一个强大的Java XML处理库。 首先,让我们详细了解一下List和XML。List是Java集合框架的一部分,它...
**JSON与XML的互转**: 1. **JSON转XML**:将JSON对象转换为XML,通常需要遍历JSON对象的结构,为每个键值对创建相应的XML元素。例如,上面的JSON对象转换为XML可能是: ```xml <key1>value1 <item>1 <item>...
Marshaller来实现Java对象与xml的互转的源代码,这是博文中用到的源码,地址:http://blog.csdn.net/y353027520dx/article/details/43446549 大家可以直接下载后运行,一起学习学习。。
C#将List与xml互转 支持简单类型 list转xml xml转list
本文将探讨JSON与XML之间的转换,并围绕“json_xml互转jar”这个主题,介绍相关的技术知识。 首先,我们来看JSON。JSON是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,易于人阅读和编写,同时也易于...
本文将深入讲解如何在Java环境中将Java对象与JSON报文和XML报文进行转换,并讨论两者之间的互转。 首先,JSON以其简洁和易于解析的特性,成为了现代Web API首选的数据交换格式。它基于JavaScript语法,允许我们以...
本篇将详细阐述如何在Java中实现XML与类对象的互转,以及提供相关的测试示例。 首先,我们需要理解XML的基本概念。XML是一种用于标记数据的语言,它具有自我描述性,可以清晰地组织和表示数据结构。在Java中,我们...
总结来说,"xml和java对象互转"涉及使用如XStream这样的库来方便地在XML和Java对象之间进行数据转换,这对于在Java应用程序中处理和交换XML数据是至关重要的。通过理解这个过程,开发者可以更高效地管理数据,并实现...
本示例"JAVA对象与XML相互转化DEMO"聚焦于如何在Java中实现对象与XML之间的互转,这对于理解和处理数据交换至关重要。 首先,Java中实现XML到对象的转换主要依赖于JAXB(Java Architecture for XML Binding)。JAXB...
这里我们将详细探讨如何在C#中实现XML与实体对象的相互转换,并基于提供的源代码进行讨论。 首先,XML到实体对象的转换通常涉及XML序列化。在C#中,我们可以使用`System.Xml.Serialization`命名空间中的`...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用在数据交换、...而XML对象的互转技术则为开发者提供了灵活的数据处理手段,无论是处理配置文件、API交互还是数据存储,都有其独特的应用场景。
在实际项目中,你可能会创建一个通用的工具类,包含上述方法,以便在任何需要JavaBean和XML互转的地方使用。在提供的`clientDemo`文件中,可能包含了这样的工具类示例,可以进一步研究和理解。 总结来说,JavaBean...
Java与XML互转是软件开发中常见的数据交换方式,特别是在集成不同系统或者处理配置文件时。XML因其结构化的特性,可以很好地表示复杂的数据结构。在Java中,通过使用Java Architecture for XML Binding (JAXB) 框架...
这个压缩包"**C#将List与xml互转_支持简单类型.rar**"包含了一个示例文本文件"**C#将List与xml互转_支持简单类型.txt**"和一个可能用于测试的数据文件"**1.xls**"。 首先,让我们理解List和XML的基本概念。List是...
xml报文和java对象互相转换 相关jar包和测试代码,可以与castor插件java对象和XML自动绑定maping文件生成和java对象一键生成工具1.2(https://download.csdn.net/download/kemoing/10864595)完美配合使用
在实际应用中,XML与JSON的互转有以下几种常见的场景: 1. **Web服务交互**:许多API使用JSON作为默认的数据交换格式,但有时客户端或服务器端可能需要处理XML数据,此时就需要进行转换。 2. **存储和序列化**:在...
本文将深入探讨如何使用Castor在Java和XML之间进行互转,并通过代码示例来阐述其工作原理。 ### 1. Castor简介 Castor是基于Java的,它通过生成Java类来解析XML文档,或者将Java对象转换为XML。它的核心功能包括:...
总的来说,JAXB是Java平台中一个强大且灵活的工具,它极大地简化了XML数据与Java对象之间的交互。通过学习和掌握JAXB,开发者可以更高效地处理XML数据,提高开发效率,同时降低出错的可能性。在提供的压缩包文件`...