zoukankan      html  css  js  c++  java
  • XmlSerializer.Deserialize 方法 (XmlReader)的C#例子

    下面的示例使用 XmlReader 反序列化对象。

    view plaincopy to clipboardprint
    ?
    using System;   
    using System.IO;   
    using System.Text;   
    using System.Xml;   
    using System.Xml.Serialization;   
      
    // This is the class that will be deserialized.   
    public class OrderedItem   
    {   
        
    public string ItemName;   
        
    public string Description;   
        
    public decimal UnitPrice;   
        
    public int Quantity;   
        
    public decimal LineTotal;   
      
        
    // A custom method used to calculate price per item.   
        public void Calculate()   
        
    {   
            LineTotal 
    = UnitPrice * Quantity;   
        }
       
    }
       
    public class Test   
    {   
        
    public static void Main(string[] args)   
        
    {   
            Test t 
    = new Test();   
            
    // Read a purchase order.   
            t.DeserializeObject("simple.xml");   
        }
       
      
        
    private void DeserializeObject(string filename)   
        
    {   
            Console.WriteLine(
    "Reading with XmlReader");   
      
            
    // Create an instance of the XmlSerializer specifying type and namespace.   
            XmlSerializer serializer = new  
            XmlSerializer(
    typeof(OrderedItem));   
      
            
    // A FileStream is needed to read the XML document.   
            FileStream fs = new FileStream(filename, FileMode.Open);   
            XmlReader reader 
    = XmlReader.Create(fs);   
      
            
    // Declare an object variable of the type to be deserialized.   
            OrderedItem i;   
      
            
    // Use the Deserialize method to restore the object's state.   
            i = (OrderedItem)serializer.Deserialize(reader);   
            fs.Close();   
      
            
    // Write out the properties of the object.   
            Console.Write(   
            i.ItemName 
    + "\t" +   
            i.Description 
    + "\t" +   
            i.UnitPrice 
    + "\t" +   
            i.Quantity 
    + "\t" +   
            i.LineTotal);   
        }
       
    }
      

    using System;
    using System.IO;
    using System.Text;
    using System.Xml;
    using System.Xml.Serialization;

    // This is the class that will be deserialized.
    public class OrderedItem
    {
        
    public string ItemName;
        
    public string Description;
        
    public decimal UnitPrice;
        
    public int Quantity;
        
    public decimal LineTotal;

        
    // A custom method used to calculate price per item.
        public void Calculate()
        
    {
            LineTotal 
    = UnitPrice * Quantity;
        }

    }

    public class Test
    {
        
    public static void Main(string[] args)
        
    {
            Test t 
    = new Test();
            
    // Read a purchase order.
            t.DeserializeObject("simple.xml");
        }


        
    private void DeserializeObject(string filename)
        
    {
            Console.WriteLine(
    "Reading with XmlReader");

            
    // Create an instance of the XmlSerializer specifying type and namespace.
            XmlSerializer serializer = new
            XmlSerializer(
    typeof(OrderedItem));

            
    // A FileStream is needed to read the XML document.
            FileStream fs = new FileStream(filename, FileMode.Open);
            XmlReader reader 
    = XmlReader.Create(fs);

            
    // Declare an object variable of the type to be deserialized.
            OrderedItem i;

            
    // Use the Deserialize method to restore the object's state.
            i = (OrderedItem)serializer.Deserialize(reader);
            fs.Close();

            
    // Write out the properties of the object.
            Console.Write(
            i.ItemName 
    + "\t" +
            i.Description 
    + "\t" +
            i.UnitPrice 
    + "\t" +
            i.Quantity 
    + "\t" +
            i.LineTotal);
        }

    }


    Tag: C#, 方法, XmlReader, Deserialize, XmlSerializer . 评论: (
    0). 固定链接 


  • 相关阅读:
    eclipse ve 问题
    NHibernate配置
    JDOM/XPATH编程指南
    win2003的IIS配置的陷阱
    关于setInterval的用法
    用Visio来做工作流定义工具
    分类算法要解决的问题
    win2003 运行 aspx程序出现Temporary ASP.NET Files 访问被拒绝 的解决方法
    ado recordset的一个陷阱
    为ServerXMLHTTP对象的HTTP请求设置超时时间
  • 原文地址:https://www.cnblogs.com/zwl12549/p/1014313.html
Copyright © 2011-2022 走看看