zoukankan      html  css  js  c++  java
  • c# 用binary实现序列化和反序列化

    直接用实例来说明序列化和反序列化:

    namespace DynamicTest
    {
    class Program
    {
    static void Main(string[] args)
    {
    List<Person> list = new List<Person>();
    Person p = new Person();
    p.ID = 1;
    p.Age = 12;
    p.Name = "zhiqing";
    p.Money = 120.3M;
    list.Add(p);
    string fileName = "C:\Users\zhiqing\Desktop\test.txt";
    Stream fstream = new FileStream(fileName, FileMode.Create, FileAccess.ReadWrite, FileShare.None);
    BinaryFormatter binFormat = new BinaryFormatter();//创建二进制序列化器
    binFormat.Serialize(fstream, list);
    fstream.Close();

    Console.WriteLine("c# 用二进制实现序列化");


    ////反序列化
    try
    {
    FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.ReadWrite);
    BinaryFormatter binayFormat = new BinaryFormatter();
    List<Person> li = (List<Person>)binayFormat.Deserialize(fs);
    foreach (Person per in li)
    {
    Console.WriteLine("反序列化结果:ID :{0}", per.ID +","+ per.Name+"," + per.Age+"," + per.Money);
    }
    }
    catch (Exception ex)
    {
    throw ex;
    }
    finally
    {
    Console.WriteLine("反序列化成功");
    Console.ReadLine();
    }
    }

    }

    }

    运行结果:

    没有什么优雅的代码比空代码的执行效率更高
  • 相关阅读:
    shell 表达式
    manjaro 换源到中国并按照速度排序
    ORA-01950:对表空间 'USERS' 无权限
    normal 普通身份 sysdba 系统管理员身份 sysoper 系统操作员身份 dba和sysdba
    学生选课数据库SQL语句练习题
    多线程编程
    补充知识点
    输入输出
    集合作业
    银行(1)0925
  • 原文地址:https://www.cnblogs.com/skyfreedom/p/4767150.html
Copyright © 2011-2022 走看看