zoukankan      html  css  js  c++  java
  • 序列化和反序列化代码

    1.UserInfo对象类

    [Serializable]
    public class UserInfo
    {
        public string Name { get; set; }
        public int Age { get; set; }
    }

    2.Xml方式序列化和反序列化

    public class XmlSerialization
    {
        public static void XmlSerialize(UserInfo user)
        {
            XmlSerializer serializer = new XmlSerializer(typeof(UserInfo));
            StreamWriter sw = new StreamWriter("UserInfo.xml");
            serializer.Serialize(sw, user);
            sw.Close();
        }
    
        public static UserInfo XmlDeserialize()
        {
            XmlSerializer serializer = new XmlSerializer(typeof(UserInfo));
            FileStream fs = new FileStream("UserInfo.xml", FileMode.Open);
            UserInfo user = serializer.Deserialize(fs) as UserInfo;
            fs.Close();
            return user;
        }
    }

    3.Binary方式序列化和反序列化

    public class RuntimeSerialization
    {
        public static void BinarySerialize(UserInfo user)
        {
            FileStream fs = new FileStream(@"SerializeFileUserInfo.bin", FileMode.Append);
            BinaryFormatter formatter = new BinaryFormatter();
            formatter.Serialize(fs, user);
            fs.Close();
        }
    
        public static UserInfo BinaryDeserialize()
        {
            FileStream fs = new FileStream(@"SerializeFileUserInfo.bin", FileMode.Open, FileAccess.Read, FileShare.Read);
            BinaryFormatter formatter = new BinaryFormatter();
            UserInfo user = formatter.Deserialize(fs) as UserInfo;
            fs.Close();
            return user;
        }
    }
  • 相关阅读:
    openstack o版本自动化脚本安装
    定时关机重启
    centos7.2 安装openstack
    Ubuntu 16.03 apt-get更换为国内阿里云源
    centos7 安装php7+mysql5.7+nginx+redis
    centos7 安装LNMP7
    多个路由器配置静态路由 简单
    puppet笔记
    MySQL备份与恢复实战案例及生产方案
    WAF:web应用防火墙
  • 原文地址:https://www.cnblogs.com/Med1tator/p/7113334.html
Copyright © 2011-2022 走看看