C#如何循环josn
时间: 2024-12-19 20:28:19 浏览: 10
在C#中处理JSON数据通常涉及解析和序列化JSON。有两种常用的方式:通过.NET内置的`Newtonsoft.Json`库(Json.NET),以及直接使用.NET Core提供的`System.Text.Json`库。这里我会重点讲解使用Json.NET的例子,因为它更广泛被开发者使用。
### 使用Json.NET ( Newtonsoft.Json ):
1. 引入NuGet包:
```csharp
using Newtonsoft.Json;
```
2. 解析JSON到对象:
```csharp
string jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
dynamic jsonObject = JsonConvert.DeserializeObject(jsonString);
string name = jsonObject.name; // John
int age = jsonObject.age; // 30
```
3. 将对象序列化成JSON:
```csharp
var person = new { Name = "Tom", Age = 35 };
string jsonOutput = JsonConvert.SerializeObject(person);
```
### 使用System.Text.Json:
```csharp
using System.Text.Json;
// 解析 JSON
string jsonString = "{\"name\":\"Alice\", \"age\":25, \"city\":\"Berlin\"}";
Person person = JsonSerializer.Deserialize<Person>(jsonString);
// 序列化对象
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
person = new Person { Name = "Bob", Age = 30 };
string jsonOutput = JsonSerializer.Serialize(person);
```
在这两个例子中,我们假设有一个名为`Person`的简单类来映射JSON中的对象。`Deserialize`方法用于反序列化,而`Serialize`方法用于序列化对象到JSON字符串。
阅读全文