上篇已经介绍到了通过序列化器将内容写入到xml文件中。这里还是用person类来写。

1、首先写一个person对象

<span style="font-family:Microsoft YaHei;font-size:18px;">person p=new person() {Name = "istari", Age = 22, Email = "1061399756@qq.com"};</span>

2、然后写一个方法用于把这个对象用我们的方式进行序列化,其中这里用到了反射。

<span style="font-family:Microsoft YaHei;font-size:18px;">MySerialize(p, typeof(person));</span>

3、在这个方法里面写自己的序列化器


<span style="font-family:Microsoft YaHei;font-size:18px;">private static void MySerialize(object obj, Type type)        {            //创建一个XDocument对象            XDocument document = new XDocument();            //写入xml文件,把类名作为根节点            string nsStr = type.ToString();            string className = nsStr.Substring(nsStr.LastIndexOf('.') + 1);            //写入根节点            XElement rootElement = new XElement(className);            //获取当前类型中的所有的属性            PropertyInfo[] properties = type.GetProperties();            //遍历            foreach (PropertyInfo  item in properties)            {                rootElement .SetElementValue (item.Name ,item.GetValue (obj,null));            }            document .Add (rootElement );            document .Save (className +".xml");        }</span>

其中用到反射来获取person类中的所有属性。

Result

<span style="font-family:Microsoft YaHei;font-size:18px;"><?xml version="1.0" encoding="utf-8"?><person>  <Name>istari</Name>  <Age>22</Age>  <Email>1061399756@qq.com</Email></person></span>



以上就是XML(6)自己写一个xml序列化器的内容,更多相关内容请关注PHP中文网(www.php.cn)!



更多相关文章

  1. XML解析之sax解析案例(二)使用sax解析把 xml文档封装成对象
  2. Java&Xml教程(八)使用JDOM将Java对象转换为XML
  3. Java&Xml教程(十一)JAXB实现XML与Java对象转换
  4. Java对象、Json、Xml转换工具Jackson使用
  5. ajax的xmlHttpRequest对象
  6. xml学习(7) .net 获取xml节点或者属性最大值
  7. FireFox对XML的处理兼容IE的节点处理方法
  8. 读写xml所有节点个人小结 和 读取xml节点的数据总结
  9. 利用XMLSerializer将对象串行化到XML

随机推荐

  1. Android Launcher2 allapps.rs
  2. 走进Android
  3. android 网络请求+json解析 最优分析
  4. Android之各种事件触发方案
  5. Android检测SD卡是否可用,Android获取磁盘
  6. android 3G pppd 调试记录
  7. Android EditText 的 android:imeOptions
  8. ProgressBar用法
  9. Android布局属性大全
  10. Android Bluetooth初始化流程