zoukankan      html  css  js  c++  java
  • 序列化&&反序列化

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Runtime.Serialization;
    using System.Runtime.Serialization.Formatters.Binary;
    using System.Runtime.Serialization.Formatters.Soap;
    using System.Xml.Serialization;
    using System.Text;
    
    namespace SerializableBinarySample
    {
        class Program
        {
            static void Main(string[] args)
            {
                using (FileStream stream = new FileStream("Hello.txt", FileMode.OpenOrCreate))
                {
                    Person p = new Person()
                    {
                        Age = 11,
                        Name = "HuangTao",
                        Sex = "Nan",
                        Sno = "2009"
                    };
                    IFormatter formatter = new BinaryFormatter();
                    formatter.Serialize(stream, p);
                    stream.Close();
                }
                using (FileStream stream = new FileStream("Hello.txt", FileMode.Open))
                {
                    IFormatter formatter = new BinaryFormatter();
                    Person p = (Person)formatter.Deserialize(stream);
                    Console.WriteLine(p.DisplayInfo());
                }
    
                using (FileStream stream = new FileStream("HelloSoap.txt", FileMode.OpenOrCreate))
                {
                    Person p = new Person()
                    {
                        Age = 11,
                        Name = "HuangTao",
                        Sex = "Nan",
                        Sno = "2009"
                    };
                    IFormatter formatter = new SoapFormatter();
                    formatter.Serialize(stream, p);
                    stream.Close();
                }
                using (FileStream stream = new FileStream("HelloSoap.txt", FileMode.Open))
                {
                    IFormatter formatter = new SoapFormatter();
                    Person p = (Person)formatter.Deserialize(stream);
                    Console.WriteLine(p.DisplayInfo());
                    stream.Close();
                }
    
                using (FileStream stream = new FileStream("HelloXml.txt", FileMode.OpenOrCreate))
                {
                    XmlSerializer formatter = new XmlSerializer(typeof(Person));
                    Person p=new Person()
                    {
                        Age = 11,
                        Name = "HuangTao",
                        Sex = "Nan",
                        Sno = "2009"
                    };
                    formatter.Serialize(stream, p);
                    stream.Close();
                }
                using (FileStream stream = new FileStream("HelloXml.txt", FileMode.Open))
                {
                    XmlSerializer formatter = new XmlSerializer(typeof(Person));
                    Person p = (Person)formatter.Deserialize(stream);
                    Console.WriteLine(p.DisplayInfo());
                    stream.Close();
                }
            }
    
        }
    }
  • 相关阅读:
    理解盒子模型
    Jackson 框架,轻易转换JSON
    JAVA仿百度分页
    最干净,最便捷的卸载Mysql
    Mysql 6.0安装过程(截图放不上去)
    开发JSP自定义标签
    JAVA实现文件上传
    开发过程中常用工具类
    JQUERY 简单易用的提示框插件
    什么是Bash Shell的内建(build in)命令
  • 原文地址:https://www.cnblogs.com/HelloMyWorld/p/3060219.html
Copyright © 2011-2022 走看看