(c#json) 一文掌握C# JSON(2023最新整理)
一文掌握C#中的JSON处理主要涉及到对JSON数据的解析和生成。在C#中,主要通过使用Newtonsoft.Json
库或.NET内置的System.Text.Json
来进行这些操作。这里我们将通过两种方式来演示如何处理JSON数据。
使用Newtonsoft.Json
首先,需要安装Newtonsoft.Json
包。您可以通过NuGet包管理器来安装。在Visual Studio中,打开解决方案的NuGet包管理器,搜索Newtonsoft.Json
并安装。
解析JSON字符串
using Newtonsoft.Json;
using System;
namespace JsonExample
{
class Program
{
static void Main(string[] args)
{
string jsonString = @"{ 'Name': 'John Doe', 'Age': 30 }";
// 使用JsonConvert.DeserializeObject方法来解析JSON字符串
var person = JsonConvert.DeserializeObject<Person>(jsonString);
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
}
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
}
生成JSON字符串
using Newtonsoft.Json;
using System;
namespace JsonExample
{
class Program
{
static void Main(string[] args)
{
var person = new Person
{
Name = "John Doe",
Age = 30
};
// 使用JsonConvert.SerializeObject方法来生成JSON字符串
string jsonString = JsonConvert.SerializeObject(person);
Console.WriteLine(jsonString);
}
}
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
}
使用System.Text.Json
从.NET Core 3.0开始,System.Text.Json
是内置于.NET的新JSON库。对于简单的序列化和反序列化,System.Text.Json
提供了一种高效的方法。
解析JSON字符串
using System;
using System.Text.Json;
namespace JsonExample
{
class Program
{
static void Main(string[] args)
{
string jsonString = @"{ ""Name"": ""John Doe"", ""Age"": 30 }";
// 使用JsonSerializer.Deserialize方法来解析JSON字符串
var person = JsonSerializer.Deserialize<Person>(jsonString);
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
}
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
}
生成JSON字符串
using System;
using System.Text.Json;
namespace JsonExample
{
class Program
{
static void Main(string[] args)
{
var person = new Person
{
Name = "John Doe",
Age = 30
};
// 使用JsonSerializer.Serialize方法来生成JSON字符串
string jsonString = JsonSerializer.Serialize(person);
Console.WriteLine(jsonString);
}
}
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
}
通过以上两种方式,您可以轻松地在C#中解析和生成JSON数据。选择哪种方式主要取决于个人偏好和项目需求,Newtonsoft.Json
提供了更多高级选项和灵活性,而System.Text.Json
则专注于性能和简洁性。
(libcef.dll是什么文件) libcef.dll libcef.dll 文件解答与指导 全网首发(图文详解1)
(npm jquery) npm 安装jquery及使用教程 如何使用npm安装和管理JavaScript包? 全网首发(图文详解1)