program.cs

来自「csharp课本的源代码」· CS 代码 · 共 64 行

CS
64
字号
using System;
using System.IO;
using System.Xml.Serialization;
namespace XMLSerializableExample
{
    [Serializable]
    public class AuthUserEntry
    {
        private string accountName;
        private int accountId;
        public string AccountName
        {
            get
            {
                return accountName;
            }
            set
            {
                accountName = value;
            }
        }
        public int AccountId
        {
            get
            {
                return accountId;
            }
            set
            {
                accountId = value;
            }
        }
    }
    class Account
    {
        static void Main(string[] args)
        {
            // 第一步,创建要序列化的对象
            AuthUserEntry user = new AuthUserEntry();
            user.AccountId = 9912053;
            user.AccountName = "XinXin";
            // 第二步,构造XmlSerializer对象
            XmlSerializer mySerializer = new XmlSerializer(typeof(AuthUserEntry));
            // 创建StreamWriter对象完成对文件的写操作
            StreamWriter myWriter = new StreamWriter("UserInfo.xml");
            // 第三步,调用Serialize方法实现序列化
            mySerializer.Serialize(myWriter, user);
            myWriter.Close();
            AuthUserEntry me;
            // 用对象类型构造XmlSerializer的实例
            //XmlSerializer mySerializer = new XmlSerializer(typeof(AuthUserEntry));
            // 创建FileStream读取文件
            FileStream myFileStream = new FileStream("UserInfo.xml", FileMode.Open);
            // 调用Deserialize方法并强制转换返回对象的类型
            me = (AuthUserEntry)mySerializer.Deserialize(myFileStream);
            myFileStream.Close();
            Console.WriteLine("帐户号:{0}", me.AccountId);
            Console.WriteLine("帐户名:{0}", me.AccountName);
            //按回车键结束
            Console.ReadLine();
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?