将一个对象转换为不可读的二进制格式称为二进制序列化。
将二进制格式转换回可读的格式称为反序列化?
要在C#中实现二进制序列化,我们必须使用库System.Runtime.Serialization.Formatters.Binary Assembly。
创建BinaryFormatter类的对象,并在类内部使用serialize方法。
示例
Serialize an Object to Binary [Serializable] public class Demo { public string ApplicationName { get; set; } = "Binary Serialize"; public int ApplicationId { get; set; } = 1001; } class Program { static void Main() { Demo sample = new Demo(); FileStream fileStream = new FileStream(@"C:\Temp\Questions.dat", FileMode.Create); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(fileStream, sample); Console.ReadKey(); } }
输出
ÿÿÿÿ
AConsoleApp,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null ConsoleApp.Demo
示例
Converting back from Binary to Object [Serializable] public class Demo { public string ApplicationName { get; set; } public int ApplicationId { get; set; } } class Program { static void Main() { FileStream fileStream = new FileStream(@"C:\Temp\Questions.dat ", FileMode.Open); BinaryFormatter formatter = new BinaryFormatter(); Demo deserializedSampledemo = (Demo)formatter.Deserialize(fileStream); Console.WriteLine($"ApplicationName { deserializedSampledemo.ApplicationName} --- ApplicationId { deserializedSampledemo.ApplicationId}"); Console.ReadKey(); } }
输出
ApplicationName Binary Serialize --- ApplicationId 1001
以上就是什么是C#中的二进制序列化和反序列化以及如何在C#中实现二进制序列化?的详细内容,更多请关注编程之家其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。