JSON序列化与反序列化

Posted 平小宅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON序列化与反序列化相关的知识,希望对你有一定的参考价值。

1.add reference [System.Runtime.Serializatio]

2.using [System.Runtime.Serialization] and [System.Runtime.Serialization.Json]

3.define model class add [DataContract] and [DataMember] attribute

class Demo
{
    [DataMember]
    public int ID { get; set; }
    [DataMember]
    public string Name { get; set; }
    [DataMember]
    public int Age { get; set; }
}

4.convert code

DataContractJsonSerializer jsonSer = new DataContractJsonSerializer(typeof(Demo));
            
//json to model
string strJson = "{\"ID\":3,\"Name\":\"TestName\",\"Age\":100}";
Stream ms1 = new MemoryStream(Encoding.Default.GetBytes(strJson));
Demo item1 = (Demo)jsonSer.ReadObject(ms1);
ms1.Close();
            
//model to json
Demo item2 = new Demo { ID = 1, Name = "TestName", Age = 12 };
Stream ms2 = new MemoryStream();
jsonSer.WriteObject(ms2, item2);
byte[] arr = new byte[ms2.Length];
ms2.Position = 0;
ms2.Read(arr, 0, arr.Length);
ms2.Close();
Console.WriteLine(Encoding.Default.GetString(arr));

 

以上是关于JSON序列化与反序列化的主要内容,如果未能解决你的问题,请参考以下文章

GolangGo 语言 JSON 的序列化与反序列化实践

GolangGo 语言 JSON 的序列化与反序列化实践

C# JSON字符串序列化与反序列化

Qt中 使用Json 对自定义对象进行序列与反序列化 之二

C++搭建集群聊天室:JSON序列化与反序列化

C++搭建集群聊天室:JSON序列化与反序列化