• xml序列化与反序列化


    <?xml version="1.0" encoding="utf-8"?>
    <Order >
      <ID>1</ID>
      <Name>凉鞋订单</Name>
      <DetailsList>
        <OrderDetails>
          <Name>凉0</Name>
          <Num>0</Num>
          <Color>red</Color>
        </OrderDetails>
        <OrderDetails>
          <Name>凉1</Name>
          <Num>1</Num>
          <Color>red</Color>
        </OrderDetails>
        <OrderDetails>
          <Name>凉2</Name>
          <Num>2</Num>
          <Color>red</Color>
        </OrderDetails>
      </DetailsList>
    </Order>

    对象类为:

        [Serializable]
        public class Order
        {
            public Order()
            {
                DetailsList = new List<OrderDetails>();
                ID = "";
                Name = "";
            }
            [XmlElement]
            public string ID;
    
            [XmlElement]
            public string Name;
    
            
            public List<OrderDetails> DetailsList;
    
        }
        public class OrderDetails
        {
            [XmlElement]
            public string Name;
    
            [XmlElement]
            public int Num;
    
            [XmlElement]
            public string Color;
        }

    .net 对xml支持的相当好,相起来也相当方便,在保存一些用户修改化配置的时候xml文件可以大显身手。

    下面介绍一下xml序列化与反序列化。

    可以序列化的项:

    公共类的公共读/写属性和字段

    • 实现 ICollection 或 IEnumerable 的类

      Note注意

      只有集合会被序列化,而公共属性却不会。

    • XmlElement 对象

    • XmlNode 对象

    • DataSet 对象

    注意:私有字段和方法都不能被序列化。

    要序列化对象,首先创建要序列化的对象并设置它的公共属性和字段。为此,必须确定要用以存储 XML 流的传输格式(或者作为流,或者作为文件)。例如,如果 XML 流必须以永久形式保存,则创建 FileStream 对象。然后保存成文件。

    序列化 XmlElement 和XmlAttribute,序列化包含返回复杂对象的字段的类如父子关系,对应在xml文件应该是嵌套的,

    讲的挺乱,直接上代码更清晰,

    点击下载

  • 相关阅读:
    max_input_vars 的影响
    php中定义网站根目录的常用方法
    phpstorm编辑器智能提示框架代码
    XunSearch(讯搜)的使用教程步骤
    xunsearch增量索引改进版
    在Windows7上安装coreseek3.2同时在PHP下简单实现步骤
    Linux下PHP+MySQL+CoreSeek中文检索引擎配置
    用js实现导航菜单点击切换选中时高亮状态
    jquery ajax POST 例子详解
    CentOS如何挂载硬盘
  • 原文地址:https://www.cnblogs.com/langhua/p/3234425.html
Copyright © 2020-2023  润新知