コード例 #1
0
        public byte[] GetBytes()
        {
            MemoryStream stream = new MemoryStream();

            BinaryWriter writer = new BinaryWriter(stream);

            switch (DataType)
            {
            case 2: writer.Write((double)(Data)); break;

            case 3: writer.Write((bool)(Data)); break;

            case 4: PackedInt.SaveToBin((PackedInt)Data, writer); break;

            case 5: writer.Write(Data.ToString()); break;

            case 6: PackedVariant.SaveToBin((PackedVariant)Data, writer); break;

            case 7: VariantDict.SaveToBin((VariantDict)Data, writer); break;
            }

            writer.Close();

            BinaryReader reader = new BinaryReader(stream);

            long length = stream.Length;

            byte[] result = reader.ReadBytes((int)length);

            return(result);
        }