XStream生成xml文件和从xml文件中得到对象
public class TestReadAndWrite {
/**
* @param args
*/
public static void main(String[] args) {
Person person=new Person();
person.setName("张三");
Calendar date=Calendar.getInstance();
Birthday bir=new Birthday();
bir.setDate(date);
bir.setPerson(person);
bir.setGenderMale();
XStream stream=new XStream();
stream.alias("birthday", Birthday.class);
stream.alias("person", Person.class);
stream.registerConverter(new BirthdayConverter2());
stream.registerConverter(new DateConverter(Locale.CHINA));
//生成xml文件
try{
//生成xml文件
FileOutputStream fos = new FileOutputStream("D://1.xml");
//为了防止乱码,指定文件输出的编码格式
OutputStreamWriter writer = new OutputStreamWriter(fos, Charset.forName("GBK"));
//xml文件头必须手工加上
writer.write("<?xml version=\"1.0\" encoding=\"GBK\" ?>\n");
stream.toXML(bir, writer);
writer.close();
}catch(Exception e){
e.printStackTrace();
}
//从xml文件中得到对象
try{
FileInputStream fis = new FileInputStream("D://1.xml");
//为了防止乱码,指定文件输出的编码格式
InputStreamReader input = new InputStreamReader(fis, Charset.forName("GBK"));
Birthday b=(Birthday) stream.fromXML(input);
input.close();
System.out.println("person.name"+b.getPerson().getName());
System.out.println(".date:"+DateFormat.getDateInstance(DateFormat.FULL).format(
b.getDate().getTime()));
System.out.println(".gender:"+b.getGender());
}catch(Exception e2){
e2.printStackTrace();
}
}
}
分享到:
相关推荐
《xStream完美转换XML、JSON》学习笔记 在IT领域,数据交换是常见的需求,而XML和JSON作为两种广泛使用的数据格式,它们之间的转换尤为重要。xStream是一个强大的Java库,它能够轻松地将Java对象序列化为XML或反...
在本学习文档中,我们将深入探讨 XStream 的核心概念、用法以及如何在实际项目中应用。 一、XStream 简介 XStream 能够将复杂的 Java 对象结构转换成易于读写的 XML 格式,同时也能将 XML 文档还原为对应的 Java ...
最齐全的xstream1.4.8.jar 最齐全的xstream1.4.8.jar 最齐全的xstream1.4.8.jar 最齐全的xstream1.4.8.jar 最齐全的xstream1.4.8.jar 最齐全的xstream1.4.8.jar 最齐全的xstream1.4.8.jar 最齐全的xstream1.4.8.jar ...
XStream 反序列化漏洞(CVE-2020-26258 & 26259),修复jar包 xstream-1.4.15.jar Xstream 是 Java 类库,用来将对象序列化成 XML (JSON) 或反序列化为对象。XStream 是一款开源软件,允许在 BSD 许可证的许可下分发...
xstream最新版jar包
4. **自定义转换**:对于复杂的对象结构,XStream允许用户自定义转换器,以满足特殊需求。 5. **支持泛型**:XStream能够处理带有泛型的类,保留类型信息。 6. **流式处理**:XStream可以将XML解析为事件流,这...
**XStream 概述** XStream 是一个 Java 库,用于将对象序列化为 XML,以及从 XML 反序列化回对象。它提供了一种简单而直观的...通过深入学习和实践,我们可以充分利用 XStream 的优点,提高代码的可读性和可维护性。
总结来说,"XStream4JavaDemo演示源码"是学习和理解XStream库的一个宝贵资源。通过这个示例,我们可以了解到XStream如何简化Java对象与XML之间的转换,以及如何自定义转换规则以满足特定需求。无论是进行数据持久化...
4. 对所有传入的序列化数据进行深度验证和过滤,避免恶意输入。 在日常开发和维护中,保持库和框架的更新是减轻此类风险的关键步骤。对于不再维护的旧版本,应考虑迁移至更现代且安全的替代方案。同时,进行定期的...
XStream使用DOM4J作为其默认的DOM提供商,用于解析和构建XML文档。 3. **xpp3_min-1.1.4c.jar**:这是一个小型的XML Pull解析器(XPP3),用于在内存效率和性能方面提供轻量级的XML解析。XStream可以使用XPP3来解析...
xstream xstream-1.4.5.jar
4. 反序列化验证:XStream允许在反序列化过程中进行验证,确保XML数据符合预期的Java对象结构。 5. 支持泛型:尽管Java泛型信息在编译后丢失,但XStream可以通过注解或其他方式来恢复这些信息,从而支持泛型类的...
4. **用InputStream将XML文档转换成Java对象** 反序列化时,XStream可以从XML输入流中恢复Java对象。假设你有一个如上所示的XML字符串,你可以这样做: ```java ByteArrayInputStream bais = new ...
这篇博客文章,标题为“xStream学习xml,JASON,JAVA对象转换”,显然会探讨如何利用XStream来处理这两种数据格式。 XStream的核心功能在于其简单易用的API,可以将Java对象直接序列化成XML或JSON字符串,同时也能...
当需要将数据转换为XML格式以便于传输或处理时,工具如xStream就显得尤为重要。Java中的xStream库提供了一个简单易用的方式来将Java对象序列化为XML,反之亦然,即反序列化XML回Java对象。 **xStream简介** xStream...
《XStream解析依赖包详解》 在Java开发中,数据序列化是一个不可或缺的环节,它使得对象的状态可以被保存和恢复。XStream是一款强大的Java库,用于将Java对象转换为XML,反之亦然,极大地简化了序列化和反序列化的...
4. **域级注解**:XStream提供了`@XStreamAlias`、`@XStreamAsAttribute`等注解,允许开发者在类或字段级别控制XML的生成方式,比如改变元素名或将其作为属性处理。 5. **集合处理**:XStream能够自动处理Java集合...
xstream-1.4.20.jar
xstream-1.4.19.jar
通过深入学习,你可以充分挖掘XStream的潜力,提升工作效率。 总结,XStream是一个强大且灵活的工具,适用于处理Java对象与XML之间的转换。无论是开发RESTful服务、数据持久化还是XML文档处理,XStream都能提供简洁...