对象序列化用于作为一种将 对象的状态转换为字节数组,以便存储或传输的机制,以后,仍可以将字节数组byte[]转换回对象原有的状态。
一、概述
当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列byte[]的形式在网络上传送。发送方需要把这个对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为对象。
把对象转换为字节序列的过程称为对象的序列化。
把字节序列恢复为对象的过程称为对象的反序列化。
二、用途:
1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;
2) 在网络上传送对象的字节序列。
序列化对象TestLoan
Stream TestFileStream = File.Create(FileName); BinaryFormatter serializer = new BinaryFormatter(); serializer.Serialize(TestFileStream, TestLoan); TestFileStream.Close();
反序列化
if (File.Exists(FileName)) { Stream TestFileStream = File.OpenRead(FileName); BinaryFormatter deserializer = new BinaryFormatter(); TestLoan = (LoanClass.Loan)deserializer.Deserialize(TestFileStream); TestFileStream.Close(); }
#####################
序列化分类:二进制序列化(BinaryFormatter ),XML序列化、SOAP序列化(SoapFormatter )
#####################
二进制位 bit
字节 byte(8位)
- 位是二进制位。位可以包含0或1的值。 原文
- 每个字节由8位组成。
字节数组/字节序列 byte[]
字节是通过网络传输信息(或在硬盘或内存中存储信息)的单位。
在ASCII码中,一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。