none
C#中枚举怎么序列化的,序列化二进制后的格式是怎么样的 RRS feed

答案

  • using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    namespace EnumSerializeExample
    {
        using System.IO;
        using System.Runtime.Serialization.Formatters.Binary;
        class Program
        {
            static void Main(string[] args)
            {
                using(FileStream fs = new FileStream("c:\\Color.d", FileMode.Create))
                {
                    BinaryFormatter bf = new BinaryFormatter();
                    bf.Serialize(fs, Color.Red | Color.Blue);
                }
            }
        }
        [Serializable]
        enum Color
        {
            Red,
            Blue
        }
    }

    做个示例,打开 c:\\Color.d 是不是你想要呢?
    2012年8月16日 14:21

全部回复

  • enum默认是从int继承而来,因此Integer怎么序列化的enum就怎么被序列化了。

    如果有帮助,标记为答复!Mark as Answer if answered!

    2012年8月16日 7:09
    版主
  • using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    namespace EnumSerializeExample
    {
        using System.IO;
        using System.Runtime.Serialization.Formatters.Binary;
        class Program
        {
            static void Main(string[] args)
            {
                using(FileStream fs = new FileStream("c:\\Color.d", FileMode.Create))
                {
                    BinaryFormatter bf = new BinaryFormatter();
                    bf.Serialize(fs, Color.Red | Color.Blue);
                }
            }
        }
        [Serializable]
        enum Color
        {
            Red,
            Blue
        }
    }

    做个示例,打开 c:\\Color.d 是不是你想要呢?
    2012年8月16日 14:21