zoukankan      html  css  js  c++  java
  • XmlSerializer使用

    XmlSerializer是对xml进行序列化操作的对象。写了一个Order的序列化方法供留念。

    序列化针对有get,set的属性;属性必须是public方式;对象顺序和序列化的顺序一致。

    对象定义

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace Artech.XmlSerializerDemos
    {
        public class Order
        {
            private double _totalPrice;
    
            private Guid _id;
            public Guid ID
            {
                get { return _id; }
                //set;
            }
    
            private DateTime _date;
            public DateTime Date
            {
                //get;
                set{_date=value;}
            }
    
            public string Customer
            {
                get;
                set;
            }
    
            public string ShipAddress
            {
                get;
                set;
    
            }
    
            public Order() { }
    
            public Order(double totalPrice)
            {
                this._totalPrice = totalPrice;
            }
        }
    }

    序列化方法

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Xml;
    using System.Xml.Serialization;
    
    namespace Artech.XmlSerializerDemos
    {
        class Program
        {
            static void Main(string[] args)
            {
                Order order = new Order()
                {
                    //ID = Guid.NewGuid(),
                    Date = DateTime.Today,
                    Customer = "Foo",
                    ShipAddress = "airport address"
                };
                Serialize<Order>(order, @"E:Order.xml");
            }
    
            static void Serialize<T>(T instance, string fileName)
            {
                using (XmlWriter writer = new XmlTextWriter(fileName, Encoding.UTF8))
                {
                    XmlSerializer serializer = new XmlSerializer(typeof(T));
                    serializer.Serialize(writer, instance);
                }
            }
        }
    }
  • 相关阅读:
    git 强制覆盖本地
    .gitignore 配置
    Git fetch和git pull的区别
    时间函数 date strtotime
    page show
    prepare PDO
    Lucene搜索方法总结
    lucene索引日期和数字
    lucene 3.0.2 + 多文件夹微博数据(时间,微博)构建索引
    lucene 使用注意
  • 原文地址:https://www.cnblogs.com/chinaagan/p/3565476.html
Copyright © 2011-2022 走看看