当先锋百科网

首页 1 2 3 4 5 6 7

JSON(JavaScript Object Notation)是一种轻量级的数据格式,在Web开发中使用非常广泛。C#语言提供了很多解析JSON字符串的方法,本文将介绍其中的两种。

1. 使用Newtonsoft.Json库

using Newtonsoft.Json;
// 定义JSON字符串
string jsonStr = "{\"name\":\"Tom\",\"age\":18}";
// 将JSON字符串转换为JObject对象
JObject jsonObj = JsonConvert.DeserializeObject<JObject>(jsonStr);
// 获取JObject中的值
string name = jsonObj["name"].ToString();
int age = int.Parse(jsonObj["age"].ToString());

在上面的代码中,我们使用JsonConvert类中的方法将JSON字符串“{“name”:”Tom”,”age”:18}”转换为JObject对象,然后通过索引器访问其中的属性值。

2. 使用System.Text.Json库

从.NET Core 3.0版本开始,C#语言自带了System.Text.Json库,用于解析和序列化JSON字符串。

using System.Text.Json;
// 定义JSON字符串
string jsonStr = "{\"name\":\"Tom\",\"age\":18}";
// 将JSON字符串转换为JsonElement对象
JsonElement jsonEle = JsonSerializer.Deserialize<JsonElement>(jsonStr);
// 获取JsonElement中的值
string name = jsonEle.GetProperty("name").GetString();
int age = jsonEle.GetProperty("age").GetInt32();

在以上代码中,我们使用了JsonSerializer类的Deserialize()方法将JSON字符串“{“name”:”Tom”,”age”:18}”转换为JsonElement对象,然后访问其中的属性值。

两种方法虽然用法略有不同,但都可以很方便地解析JSON字符串中的内容。