程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> XML序列化/反序列化數據庫形式保存和讀取。,xml序列化

XML序列化/反序列化數據庫形式保存和讀取。,xml序列化

編輯:C#入門知識

XML序列化/反序列化數據庫形式保存和讀取。,xml序列化


直接上碼:

首先創建class1類

public class Class1
    {

        public string name { get; set; }
        public int age { get; set; }
        public bool sex { get; set; }
    }

實例化class1對象並進行序列化和反序列化

 static void Main(string[] args)
        {
            //實例化class1類
            Class1 c1 = new Class1() { name = "jia", age = 18, sex = true };

            //序列化(class1為反序列化已知對象)
            XmlSerializer ser = new XmlSerializer(typeof(Class1));

            // MemoryStream類是創建緩存以byte的形式臨時存儲數據
            MemoryStream ms = new MemoryStream(); 

            //將序列化對象c1序列化後緩存到ms對象中
            ser.Serialize(ms, c1);

            //將緩存數據以utf8編碼的形式讀取並存入string對象(要保存的對象)
            string xmlString = Encoding.UTF8.GetString(ms.ToArray());

            //釋放緩存
            ms.Dispose();

            //反序列化(class1為反序列化已知對象)
            XmlSerializer dser = new XmlSerializer(typeof(Class1));

            //讀取到的以byte的形式存儲的數據並以utf8編碼的形式讀取並存入string對象
            Stream xmlStream = new MemoryStream(Encoding.UTF8.GetBytes(xmlString));

            //進行反序列化並轉換為類對象
            Class1 c2 = dser.Deserialize(xmlStream) as Class1;
            Console.Read();
        }

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved