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). 固定链接 


  • 相关阅读:
    世界史上最著名的十大思想实验
    excel 鼠标上下左右移动
    excel 批注
    C# TextWriter类
    C#中的Hashtable
    cython安装、使用
    Java JsonPath grab InvalidPathException in code, you must be catching Java 7's java.nio.file.InvalidPathException instead of JsonPath's com.jayway.jsonpath.InvalidPathExceptio
    Java牛角尖【007】:Java中的Error能不能被Catch
    2016亚洲城市GDP50强出炉
    全国5A级旅游景区已达250家
  • 原文地址:https://www.cnblogs.com/zwl12549/p/1014313.html
Copyright © 2011-2022 走看看