在C#中,利用SerializableAttribute可以很方便的实现对象的串行化,缺点是占用空间大。本文除了介绍该属性的用法之外,还将介绍一种自定义串行化功能的实现方案。
以下代码展示了SerializableAttribute的基本用法:
- using System;
- using System.IO;
- using System.Runtime.Serialization;
- using System.Runtime.Serialization.Formatters.Binary;
- namespace UseSerializable
- {
- [Serializable]
- class PointF
- {
- public float x;
- public float y;
- }
- [Serializable]
- class CircleF
- {
- public PointF Center = new PointF();
- public float Radius;
- }
- class Program
- {
- static void Main(string[] args)
- {
- CircleF circle = new CircleF();