Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            common.proto2.MsgTest input1Msg = new common.proto2.MsgTest();
            SetMsgTest(input1Msg, 3);
            common.proto2.MsgTest input2Msg = new common.proto2.MsgTest();
            SetMsgTest(input2Msg, 2);
            common.proto2.MsgTest outputMsg = new common.proto2.MsgTest();

            // 本地内存读/写
            if (true)
            {
                MemoryStream input1Buff = new MemoryStream();
                MemoryStream input2Buff = new MemoryStream();

                // 序列化到buff
                if (!input1Msg.SerializeToStream(input1Buff, input1Msg.ByteSize()))
                {
                    Console.Write("input1Msg SerializeToStream error.");
                }
                if (!input2Msg.SerializeToStream(input2Buff, input2Msg.ByteSize()))
                {
                    Console.Write("input2Msg SerializeToStream error.");
                }

                // 从buff反序列化
                input1Buff.Position = 0;
                if (!outputMsg.ParseFromStream(input1Buff, (ulong)input1Buff.Length))
                {
                    Console.Write("outputMsg ParseFromStream error.");
                }
                input2Buff.Position = 0;
                if (!outputMsg.ParseFromStream(input2Buff, (ulong)input2Buff.Length))
                {
                    Console.Write("outputMsg ParseFromStream error.");
                }
            }

            // 序列化到文件
            if (true)
            {
                FileStream output1Stream = new FileStream("./output1Stream.txt", FileMode.OpenOrCreate, FileAccess.Write);
                FileStream output2Stream = new FileStream("./output2Stream.txt", FileMode.OpenOrCreate, FileAccess.Write);
                if (null != output1Stream)
                {
                    if (!input1Msg.SerializeToStream(output1Stream, input1Msg.ByteSize()))
                    {
                        Console.Write("outputMsg SerializeToStream error.");
                    }
                    output1Stream.Close();
                }
                if (null != output2Stream)
                {
                    if (!input2Msg.SerializeToStream(output2Stream, input2Msg.ByteSize()))
                    {
                        Console.Write("outputMsg SerializeToStream error.");
                    }
                    output2Stream.Close();
                }
            }

            // 从文件反序列化
            if (true)
            {
                FileStream input1Stream = new FileStream("./output1Stream.txt", FileMode.Open, FileAccess.Read);
                FileStream input2Stream = new FileStream("./output2Stream.txt", FileMode.Open, FileAccess.Read);
                if (null != input1Stream)
                {
                    if (!outputMsg.ParseFromStream(input1Stream, (ulong)input1Stream.Length))
                    {
                        Console.Write("outputMsg ParseFromStream error.");
                    }
                    input1Stream.Close();
                }
                if (null != input2Stream)
                {
                    if (!outputMsg.ParseFromStream(input2Stream, (ulong)input2Stream.Length))
                    {
                        Console.Write("outputMsg ParseFromStream error.");
                    }
                    input1Stream.Close();
                }
            }

            Console.WriteLine("按任意键退出...");
            Console.ReadKey();
        }
Ejemplo n.º 2
0
        static void SetMsgTest(common.proto2.MsgTest msg, int n)
        {
            {
                MsgTestSingular msgSingular = new MsgTestSingular();
                SetMsgTestSingular(msgSingular);
                msg.m_testsingular = msgSingular;
            }
            {
                msg.clear_m_testsingular_array();
                for (int i = 0; i < n; i++)
                {
                    MsgTestSingular msgSingular = new MsgTestSingular();
                    SetMsgTestSingular(msgSingular);
                    msg.add_m_testsingular_array(msgSingular);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestSingular msgSingular = new MsgTestSingular();
                    ;
                    SetMsgTestSingular(msgSingular);
                    msg.set_m_testsingular_array(i, msgSingular);
                }
            }
            {
                for (int i = 0; i < n; i++)
                {
                    MsgTestSingular msgSingular = new MsgTestSingular();
                    SetMsgTestSingular(msgSingular);
                    msg.add_m_testsingular_map(i, msgSingular);
                }
                for (int i = 0; i < n; i++)
                {
                    msg.remove_m_testsingular_map(i);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestSingular msgSingular = new MsgTestSingular();
                    SetMsgTestSingular(msgSingular);
                    msg.add_m_testsingular_map(i, msgSingular);
                }
                for (int i = 0; i < n; i++)
                {
                    msg.find_m_testsingular_map(i);
                }
            }

            {
                MsgTestArray msgArray = new MsgTestArray();
                SetMsgTestArray(msgArray, n);
                msg.m_testarray = msgArray;
            }
            {
                msg.clear_m_testarray_array();
                for (int i = 0; i < n; i++)
                {
                    MsgTestArray msgArray = new MsgTestArray();
                    SetMsgTestArray(msgArray, n);
                    msg.add_m_testarray_array(msgArray);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestArray msgArray = new MsgTestArray();
                    SetMsgTestArray(msgArray, n);
                    msg.set_m_testarray_array(i, msgArray);
                }
            }
            {
                for (int i = 0; i < n; i++)
                {
                    MsgTestArray msgArray = new MsgTestArray();
                    SetMsgTestArray(msgArray, n);
                    msg.add_m_testarray_map(i, msgArray);
                }
                for (int i = 0; i < n; i++)
                {
                    msg.remove_m_testarray_map(i);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestArray msgArray = new MsgTestArray();
                    SetMsgTestArray(msgArray, n);
                    msg.add_m_testarray_map(i, msgArray);
                }
                for (int i = 0; i < n; i++)
                {
                    msg.find_m_testarray_map(i);
                }
            }

            {
                MsgTestSet msgSet = new MsgTestSet();
                SetMsgTestSet(msgSet, n);
                msg.m_testset = msgSet;
            }
            {
                msg.clear_m_testset_array();
                for (int i = 0; i < n; i++)
                {
                    MsgTestSet msgSet = new MsgTestSet();
                    SetMsgTestSet(msgSet, n);
                    msg.add_m_testset_array(msgSet);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestSet msgSet = new MsgTestSet();
                    SetMsgTestSet(msgSet, n);
                    msg.set_m_testset_array(i, msgSet);
                }
            }
            {
                for (int i = 0; i < n; i++)
                {
                    MsgTestSet msgSet = new MsgTestSet();
                    SetMsgTestSet(msgSet, n);
                    msg.add_m_testset_map(i, msgSet);
                }
                for (int i = 0; i < n; i++)
                {
                    msg.remove_m_testset_map(i);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestSet msgSet = new MsgTestSet();
                    SetMsgTestSet(msgSet, n);
                    msg.add_m_testset_map(i, msgSet);
                }
                for (int i = 0; i < n; i++)
                {
                    msg.find_m_testset_map(i);
                }
            }

            {
                MsgTestMap msgMap = new MsgTestMap();
                SetMsgTestMap(msgMap, n);
                msg.m_testmap = msgMap;
            }
            {
                msg.clear_m_testmap_array();
                for (int i = 0; i < n; i++)
                {
                    MsgTestMap msgMap = new MsgTestMap();
                    SetMsgTestMap(msgMap, n);
                    msg.add_m_testmap_array(msgMap);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestMap msgMap = new MsgTestMap();
                    SetMsgTestMap(msgMap, n);
                    msg.set_m_testmap_array(i, msgMap);
                }
            }
            {
                for (int i = 0; i < n; i++)
                {
                    MsgTestMap msgMap = new MsgTestMap();
                    SetMsgTestMap(msgMap, n);
                    msg.add_m_testmap_map(i, msgMap);
                }
                for (int i = 0; i < n; i++)
                {
                    msg.remove_m_testmap_map(i);
                }
                for (int i = 0; i < n; i++)
                {
                    MsgTestMap msgMap = new MsgTestMap();
                    SetMsgTestMap(msgMap, n);
                    msg.add_m_testmap_map(i, msgMap);
                }
            }
        }