开发者

C#中JSON字符串类型与对象类型相互转换实现方式

开发者 https://www.devze.com 2025-06-04 10:41 出处:网络 作者: qq_38151300
目录一、序列化二、使用Newtonsoft.json库(也称为Json.NET)进行序列化和反序列化操作三、使用内置的System.Text.Json库进行序列化和反序列化操作总结一、序列化
目录
  • 一、序列化
  • 二、使用Newtonsoft.json库(也称为Json.NET)进行序列化和反序列化操作
  • 三、使用内置的System.Text.Json库进行序列化和反序列化操作
  • 总结

一、序列化

把对象转化为可传输的字节序列(字符串)过程称为序列化。

  • 反序列化:把字节序列(字符串)转换为对象的过程称为反序列化。
  • 目的(作用):传输数据。

二、使用Newtonspythonoft.Json库(也称为Json.NET)进行序列化和反序列化操作

javascript先需要安装该库,可以通过NuGet包管理器或者手动下载并添加引用来完成。

  • 然后按照以下示例代码进行转换:
using Newtonsoft.Json; // 导入命名空android间

// 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开始提供的新功能,无需额外安装python任何库。

  • 按照以下示例代码进行转换:
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(pezxAdzrson.Age); // 输出 30

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号