Serialization 为什么要使用序列化?

Serialization 为什么要使用序列化?,serialization,Serialization,为什么需要使用序列化? 如果我们想通过网络发送一个对象或一段数据,我们可以使用字节流。 如果我们想将一些数据保存到磁盘,我们可以再次使用二进制模式和字节流,并将其保存。 那么使用序列化有什么好处呢?一般来说,序列化是一种保存对象状态的方法,但我建议您阅读此wiki页面,我认为它非常详细且正确: 除其他原因外,需要在体系结构之间兼容。从一个体系结构到另一个体系结构,有时从一个编译器到另一个编译器,整数的字节数并不相同 另外,你所说的仍然是序列化。二进制序列化。您将对象的所有字节放在一起,以便存储它

为什么需要使用序列化?
如果我们想通过网络发送一个对象或一段数据,我们可以使用字节流。
如果我们想将一些数据保存到磁盘,我们可以再次使用二进制模式和字节流,并将其保存。

那么使用序列化有什么好处呢?

一般来说,序列化是一种保存对象状态的方法,但我建议您阅读此wiki页面,我认为它非常详细且正确:


除其他原因外,需要在体系结构之间兼容。从一个体系结构到另一个体系结构,有时从一个编译器到另一个编译器,整数的字节数并不相同

另外,你所说的仍然是序列化。二进制序列化。您将对象的所有字节放在一起,以便存储它们,并能够在以后将它们重新转换为对象。这是连载


更多信息

从技术上讲,在底层,您的序列化对象也将最终成为电缆或文件系统上的字节流

因此,您还可以将其视为将对象转换为字节流的一种标准化且已经可用的方法。存储/传输对象是一个非常常见的需求,在每个应用程序中重新设计这个轮子意义不大

正如其他人提到的,您还知道这个对象->字节流实现非常健壮、经过测试,并且通常与体系结构无关

这并不意味着它是保存或传输对象的唯一可接受的方式:在某些情况下,您必须实现自己的方法,例如,避免保存不必要的/私有成员(例如出于安全或性能原因)。但是,如果您是在一个简单的情况下,您可以通过使用框架、语言或VM的序列化/反序列化来简化您的生活,而不必自己实现它


希望这会有所帮助。

序列化是将对象转换为流的过程,以便可以将其保存在任何物理文件(如XML)或数据库中。C#中序列化的主要目的是持久化对象并将其保存在任何指定的存储介质(如流、物理文件或数据库)中。

序列化是“字节流”。我了解了序列化的含义。我想OP和我都想知道,在哪一个例子中它是有用的?它被用来在网络上传输数据包,因为每一方都可能有一台具有不同架构的机器。