• 序列化与反序列化问题


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Runtime.Serialization;
    using System.Runtime.Serialization.Formatters.Binary;
    using System.IO;
    namespace BinarySerializableExample
    {
        [Serializable]//序列化
            //序列化的两个功能是:1:将对象的状态存储在媒体中,便于创建对象的精确的副本
            //2.通过值将对象从一个应用程序传送到另一个应用程序
        public class AuthUserEntry
        {
            private int accountId;
            private string accountName;
            public int AccountId
            {
                get
                {
                    return accountId;
                }
                set
                {
                    accountId = value;
                }
            }
            public string AccountName
            {
                get
                {
                    return accountName;
                }
                set
                {
                    accountName = value;
                }
            }
        }

        class Program
        {
            static void Main(string[] args)
            {
                AuthUserEntry ate = new AuthUserEntry();
                ate.AccountId = 21;
                ate.AccountName = "LiangShuai";
                IFormatter formatter = new BinaryFormatter();//序列化到一个二进制的文件.bin中
                Stream stream = new FileStream("UserInfo.bin",FileMode.Create,FileAccess.Write,FileShare.None);
                formatter.Serialize(stream,ate);
                stream.Close();
                //反序列化时要首先创建用于读取的流和格式化接口,然后用格式化接口反序列化该对象
                stream = new FileStream("UserInfo.bin",FileMode.Open,FileAccess.Read,FileShare.Read);
                AuthUserEntry auth = (AuthUserEntry)formatter.Deserialize(stream);
                stream.Close();
                Console.WriteLine("ID is{0}",auth.AccountId);
                Console.WriteLine("Name is {0}",auth.AccountName);
                Console.ReadKey();

            }
        }
    }

    未经许可禁止转载本博客内容
  • 相关阅读:
    phome_enewsclass 数据表字段解释(栏目主表)
    phome_ecms_news 数据表字段解释(新闻系统模型-主表)
    帝国cms7.2灵动标签万能教程
    帝国cms7.2自定义列表建立tag效果 代码 教程
    栏目自定义变量怎么用?
    给你的网站404页面加上“宝贝寻亲”公益页面
    discuz_style_default.xml修改
    谈谈几大宗教.
    discuz默认模板文件结构详解-模板文件夹介绍
    一些适合用手柄玩的网络游戏
  • 原文地址:https://www.cnblogs.com/liangshuai/p/2229285.html
Copyright © 2020-2023  润新知