zoukankan      html  css  js  c++  java
  • .NET 和Java 对象 XML序列化 库WOX

    当 .NET 应用程序将对象转换为 XML 文档并存储该 XML。实际上,XML 被用作可移植数据存储机制,因为 .NET 对象被转换为 XML,然后又从 XML 转换为 Java,反之亦然。

    Carlos Jaimez 和 Simon Lucas 开发的 Web Objects in XML(WOX,woxserializer.sourceforge.net)就是一个完成此项任务的开源项目。

    下面是摘自其网站的 Java 到 .NET 转换示例。下面是采用 Java 和 C# 定义的 Student 和 Course 类。

    图 3 用 Java 和 C# 编写的 Student 和 Course 类

    1.           // Java classes
    2. public class Student
    3. {
    4.   private String name;
    5.   private int registrationNumber;
    6.   private Course[] courses;
    7. }
    8. public class Course
    9. {
    10.   private int code;
    11.   private String name;
    12.   private int term;
    13. }
    14.  
    15. // ***************************************************
    16. // .NET classes in C#
    17. public class Student
    18. {
    19.   private String name;
    20.   private Int32 registrationNumber;
    21.   private Course[] courses;
    22. }
    23. public class Course
    24. {
    25.   private Int32 code;
    26.   private String name;
    27.   private Int32 term;
    28. }
    29.        

    如果我们使用 .NET 和 Java 应用程序将以上 Student 和 Course 对象使用 WOX 库将这些对象转换为 XML。 之后,如果应用程序想要从XML读取这些对象,则再次读取 WOX 库,将 XML 转换回 Java 或 .NET 对象格式。下面是转换为 XML 格式的 Student 和 Course 类。

    转换为 XML 的 Java 和 .NET 类

    1. <object type="Student" id="0">
    2.   <field name="name" type="string" value="Carlos Jaimez"/>
    3.   <field name="registrationNumber" type="int" value="76453"/>
    4.   <field name="courses">
    5.     <object type="array" elementType="Course" length="3" id="1">
    6.       <object type="Course" id="2">
    7.         <field name="code" type="int" value="6756"/>
    8.         <field name="name" type="string"
    9.           value="XML and Related Technologies"/>
    10.         <field name="term" type="int" value="2"/>
    11.       </object>
    12.       <object type="Course" id="3">
    13.         <field name="code" type="int" value="9865"/>
    14.         <field name="name" type="string"
    15.           value="Object Oriented Programming"/>
    16.         <field name="term" type="int" value="2"/>
    17.       </object>
    18.       <object type="Course" id="4">
    19.         <field name="code" type="int" value="1134"/>
    20.         <field name="name" type="string" value="E-Commerce Programming"/>
    21.         <field name="term" type="int" value="3"/>
    22.       </object>
    23.     </object>
    24.   </field>
    25. </object>
    26.        

    在您的应用程序中调用 WOX将XML转换为.NET或是Java对象。

    欢迎大家扫描下面二维码成为我的客户,为你服务和上云

  • 相关阅读:
    Control.CheckForIllegalCrossThreadCalls
    c#禁止Webbrowser控件的弹出脚本错误对话框
    c#,WebBrowser 判断网页是否加载完毕
    c#里的动态数组ArrayList
    C#数据类型转换
    Net2.0 的新线程 ParameterizedThreadStart &BackgroundW
    在C#中使用委托的方式触发事件
    ASP.NET运行原理
    第六讲:ObjC 内存管理4 自动释放池
    第二讲:ObjC 点语法
  • 原文地址:https://www.cnblogs.com/shanyou/p/1870828.html
Copyright © 2011-2022 走看看