C# 对象JSON序列化与反序列化
来源:互联网 发布:windows api 移动文件 编辑:程序博客网 时间:2024/05/16 15:09
Newtonsoft.Json 方式 序列化与反序列化
CorpSendText text = new CorpSendText("text excample");//CorpSendText:自定义类型string jsonText =Newtonsoft.Json.JsonConvert.SerializeObject(text);//序列化CorpSendText para = Newtonsoft.Json.JsonConvert.DeserializeObject<CorpSendText>(jsonText);//反序列化未自定义对象类型JObject jsonobject = (Newtonsoft.Json.Linq.JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(jsonText);//反序列化为JSON对象类型(JObject)
C#自带方式 序列化与反序列化
命名空间: System.Runtime.Serialization.Json
程序集: System.Runtime.Serialization(位于 System.Runtime.Serialization.dll)
参考
DataContractJsonSerializer对象:实现序列化或反序列化指定类型的对象。
序列化步骤:
- 新实例化DataContractJsonSerializer对象
- DataContractJsonSerializer对象将预要序列化的对象读入流stream:
WriteObject需考虑异常处理,比如DataTable序列化要求设置TableName
。 - 将流stream写入byte[]
- 解码字节数组所有字节为一个字符串
var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));//1:(指定要序列化的对象类型)var stream = new System.IO.MemoryStream();serializer.WriteObject(stream, obj);//2byte[] dataBytes = new byte[stream.Length];stream.Position = 0;//获取或设置流中的当前位置stream.Read(dataBytes, 0, (int)stream.Length);//3string json = Encoding.UTF8.GetString(dataBytes);//4
反序列化步骤:
- DataContractJsonSerializer对象以 JSON(JavaScript 对象表示法)格式读取文档流,并返回反序列化的对象。
- byte[]写入stream
- 将指定字符串中的所有字符编码为一个字节序列byte[]
- 新实例化DataContractJsonSerializer对象
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));//1:(指定要序列化的对象类型)byte[] dataBytes = Encoding.UTF8.GetBytes(jsonString);//2var stream = new System.IO.MemoryStream(dataBytes);//3T t1 = (T)serializer.ReadObject(stream);//4
阅读全文
0 0
- C#序列、反序列化json对象
- C# 对象JSON序列化与反序列化
- C# Json转对象 序列化 反序列化
- C#序列化与反序列化对象XML和JSON 详细代码工具
- JSON序列化与反序列化对象
- JSON对象序列化与反序列化
- JSON时间对象序列化与反序列化<Timestamp>
- C#对象反序列化与对象序列化
- C#实现JSON序列化与反序列化介绍
- C# Json序列化与反序列化
- C#实现JSON序列化与反序列化介绍
- C# JSON字符串序列化与反序列化
- C# Json序列化与反序列化
- C# JSON字符串序列化与反序列化
- C# JSON字符串序列化与反序列化
- C# JSON字符串序列化与反序列化
- c# JSON序列化与反序列化
- C#编程之JSON序列化与反序列化
- Keras 示例代码 01 addition_rnn.py 结果演示及代码解析
- BZOJ 1066: [SCOI2007]蜥蜴 最大流
- 前端题部分总结
- 非注解式的处理器映射器和适配器配置(4)
- 单利模式和工厂方法模式
- C# 对象JSON序列化与反序列化
- 简要介绍Servlet以及其开发步骤
- CURL上传文件之PHP版本
- 系统设计内容
- nginx添加允许跨域header头
- XML之CDATA解决生产xml错误
- [RK3288][Android6.0] USB WiFi驱动流程小结
- 【分享】PPT--你不知道的使用技巧
- Python之Socket编程