• 序列化和反序列 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.

  • 相关阅读:
    资源链接 标签: 笔记 2016-08-15 13:51 66人阅读 评论(0) 收藏
    js函数 标签: javascript 2016-08-12 16:48 56人阅读 评论(0) 收藏
    js数组 标签: javascript 2016-08-03 14:15 131人阅读 评论(0) 收藏
    typeof操作符和instanceof操作符的区别 标签: JavaScript 2016-08-01 14:21 113人阅读 评论(
    js笔记 标签: javascript 2016-08-01 13:30 75人阅读 评论(0) 收藏
    Linux命令 标签: linux 2016-08-01 10:26 508人阅读 评论(0) 收藏
    linux 用户切换 标签: linux 2016-07-30 13:57 144人阅读 评论(0) 收藏
    高质量C++C编程指南笔记 标签: c++笔记 2015-11-22 20:59 179人阅读 评论(0) 收藏
    CSS学习笔记
    C++ Primer Plus(6th Edition) 习题总结(2)
  • 原文地址:https://www.cnblogs.com/happy-Chen/p/3591468.html
Copyright © 2020-2023  润新知