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


  • 相关阅读:
    luaPlus
    falagard cegui
    cegui 的透明纹理
    msvcprt.lib(MSVCP90.dll) : error LNK2005:已经在libcpmtd.lib(xmutex.obj) 中定义
    CEGUI
    SameText
    操作 Wave 文件(15): 合并与剪裁 wav 文件
    Delphi 的编码与解码(或叫加密与解密)函数
    操作 Wave 文件(13): waveOutGetVolume、waveOutSetVolume
    操作 Wave 文件(12): 使用 waveOut...重复播放 wav 文件
  • 原文地址:https://www.cnblogs.com/zwl12549/p/1014313.html
Copyright © 2011-2022 走看看