zoukankan      html  css  js  c++  java
  • 序列化和反序列 asp.net c#

    In this article we are going to see how to serialize and deserialize an object as binary data using the binary formatter.
    Step 1: Used Namespace
    using System; using System.Collections; using System.IO; using System.Runtime.Serialization.Formatters.Binary;

    Step 2: Usage

    protected void Page_Load(object sender, EventArgs e) {     Employees emps = new Employees();

        emps.Add(new Employee("1", "Lajapathy"));     emps.Add(new Employee("2", "Anand"));

        emps.Add(new Employee("3", "Sathiya"));     emps.Add(new Employee("4", "Lakshmi"));     emps.Add(new Employee("5", "Parthiban"));       string pth = @"D:Test.bin";       //Serializing the collection     Serialize(emps, pth);       //Deserializing the collection     Deserialize(pth); }

    Step 3: Serializing the Object using Binary Formatter
    //Serializing the List public void Serialize(Employees emps, String filename) {     //Create the stream to add object into it.     System.IO.Stream ms = File.OpenWrite(filename);      //Format the object as Binary

        BinaryFormatter formatter = new BinaryFormatter();     //It serialize the employee object     formatter.Serialize(ms, emps);     ms.Flush();     ms.Close();     ms.Dispose(); }

    Step 4: Deserializing the Object using Binary Formatter
    //Deserializing the List public void Deserialize(String filename) {     //Format the object as Binary     BinaryFormatter formatter = new BinaryFormatter();       //Reading the file from the server     FileStream fs = File.Open(filename, FileMode.Open);       object obj = formatter.Deserialize(fs);     Employees emps = (Employees)obj;     fs.Flush();     fs.Close();     fs.Dispose();      foreach (Employee employee in emps)     {        Response.Write(employee.Name + "<br/>");     } }

    Step 5: Output Path of Serialization:
    Step 6: Output of Deserialization:
     

    //Deserializing the List public void Deserialize(String filename) {     //Format the object as Binary     BinaryFormatter formatter = new BinaryFormatter();       //Reading the file from the server     FileStream fs = File.Open(filename, FileMode.Open);       object obj = formatter.Deserialize(fs);     Employees emps = (Employees)obj;     fs.Flush();     fs.Close();     fs.Dispose();       foreach (Employee employee in emps)     {         Response.Write(employee.Name + "<br/>");     } }
    Copy & Paste Code Snippet
    using System; using System.Collections; using System.IO; using System.Runtime.Serialization.Formatters.Binary;   namespace SampleApplication {     public partial class ObjectSerialization : System.Web.UI.Page     {         protected void Page_Load(object sender, EventArgs e)         {             Employees emps = new Employees();             emps.Add(new Employee("1", "Lajapathy"));             emps.Add(new Employee("2", "Anand"));             emps.Add(new Employee("3", "Sathiya"));

                emps.Add(new Employee("4", "Lakshmi"));             emps.Add(new Employee("5", "Parthiban"));               string pth = @"D:Test.bin";               //Serializing the collection             Serialize(emps, pth);               //Deserializing the collection             Deserialize(pth);         }          //Serializing the List         public void Serialize(Employees emps, String filename)         {             //Create the stream to add object into it.             System.IO.Stream ms = File.OpenWrite(filename);               //Format the object as Binary             BinaryFormatter formatter = new BinaryFormatter();               //It serialize the employee object             formatter.Serialize(ms, emps);             ms.Flush();             ms.Close();             ms.Dispose();         }          //Deserializing the List         public void Deserialize(String filename)         {             //Format the object as Binary             BinaryFormatter formatter = new BinaryFormatter();               //Reading the file from the server             FileStream fs = File.Open(filename, FileMode.Open);              object obj = formatter.Deserialize(fs);             Employees emps = (Employees)obj;            fs.Flush();             fs.Close();             fs.Dispose();              foreach (Employee employee in emps)             {                 Response.Write(employee.Name + "<br/>");             }         }     }      //Classes     [Serializable]     public class Employee     {          public Employee(String id, String name)         {             _ID = id;             _Name = name;         }          private String _ID = String.Empty;         private String _Name = String.Empty;          public String ID         {             get             {                 return _ID;             set             {                 _ID = value;             }         }         public String Name         {             get             {

                    return _Name;             }             set             {                 _Name = value;             }         }     }      [Serializable]     public class Employees : CollectionBase     {         //Constructor         public Employees()         {          }           //Add function         public void Add(Employee objT)         {             this.List.Add(objT);         }          //Indexer         public Employee this[int i]         {             get             {                 return (Employee)this.List[i];             }             set             {                 this.List.Add(value);             }         }     }}

    Thanks for reading this article(http://www.c-sharpcorner.com/UploadFile/d3e4b1/serializing-and-deserializing-the-object-as-binary-data-usin/). Have a nice day.

  • 相关阅读:
    1012 The Best Rank (25 分)(排序)
    1011. World Cup Betting (20)(查找元素)
    1009 Product of Polynomials (25 分)(模拟)
    1008 Elevator (20 分)(数学问题)
    1006 Sign In and Sign Out (25 分)(查找元素)
    1005 Spell It Right (20 分)(字符串处理)
    Kafka Connect 出现ERROR Failed to flush WorkerSourceTask{id=local-file-source-0}, timed out while wait
    flume、kafka、avro组成的消息系统
    Java23种设计模式总结【转载】
    Java编程 思维导图
  • 原文地址:https://www.cnblogs.com/happy-Chen/p/3591468.html
Copyright © 2011-2022 走看看