C#中JSON字符串类型与对象类型相互转换实现方式
更新时间:2025年06月03日 09:23:50 作者:qq_38151300
这篇文章主要介绍了C#中JSON字符串类型与对象类型相互转换实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
一、序列化
把对象转化为可传输的字节序列(字符串)过程称为序列化。
- 反序列化:把字节序列(字符串)转换为对象的过程称为反序列化。
- 目的(作用):传输数据。
二、使用Newtonsoft.Json库(也称为Json.NET)进行序列化和反序列化操作
首先需要安装该库,可以通过NuGet包管理器或者手动下载并添加引用来完成。
- 然后按照以下示例代码进行转换:
using Newtonsoft.Json; // 导入命名空间
// JSON字符串
string json = “{“name”:“John”, “age”:30}”;
// 定义目标对象类型
public class Person { public string Name { get; set; } public int Age { get; set; }}
// 将JSON字符串转换为对象
Person person = JsonConvert.DeserializeObject(json);
// 将对象转换为JSON字符串
string str = JsonConvert.SerializeObject(对象名);
Console.WriteLine(person.Name); // 输出 John
Console.WriteLine(person.Age); // 输出 30三、使用内置的System.Text.Json库进行序列化和反序列化操作
这是从.NET Core 3.0开始提供的新功能,无需额外安装任何库。
- 按照以下示例代码进行转换:
using System.Text.Json; // 导入命名空间
// JSON字符串
string json = “{“name”:“John”, “age”:30}”;
// 定义目标对象类型
public class Person { public string Name { get; set; } public int Age { get; set; }}
// 将JSON字符串转换为对象
var options = new JsonSerializerOptions();
options.PropertyNameCaseInsensitive = true; // 设置属性不区分大小写
Person person = JsonSerializer.Deserialize(json, options);
Console.WriteLine(person.Name); // 输出 John
Console.WriteLine(person.Age); // 输出 30总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
unity AudioSource播放完声音后要执行的函数或条件操作
这篇文章主要介绍了unity AudioSource播放完声音后要执行的函数或条件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-04-04
C#使用Spire.PDF for .NET提取PDF文本的具体教程
在日常开发中,经常会遇到从 PDF 文件中提取文本的需求,Spire.PDF for .NET 提供了简单高效的 API,可以在 C# 项目中直接读取 PDF 文本,无需安装 Adobe Acrobat,所以本文给大家介绍了C#使用Spire.PDF for .NET提取PDF文本的具体教程,需要的朋友可以参考下2025-09-09
Unity UGUI的CanvasScaler画布缩放器组件介绍使用
这篇文章主要为大家介绍了Unity UGUI的CanvasScaler画布缩放器组件介绍使用,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-07-07
c#连接sqlserver数据库、插入数据、从数据库获取时间示例
这篇文章主要介绍了c#连接sqlserver数据库、插入数据、从数据库获取时间示例,需要的朋友可以参考下2014-05-05


最新评论