📜  C# JOSN 数组转换 - C# (1)

📅  最后修改于: 2023-12-03 14:39:43.361000             🧑  作者: Mango

C# JSON数组转换

简介

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。在C#中,可以使用Json.NET库将JSON字符串与对象互相转换。本文将重点介绍如何处理JSON数组的转换。

Json.NET库简介

Json.NET是一个开源的.NET库,旨在提供高性能、灵活性和可靠性的JSON处理支持。使用Json.NET,可以轻松地将JSON数据写入.NET对象中,或将.NET对象序列化为JSON。

安装

使用NuGet Package Manager进行安装。

Install-Package Newtonsoft.Json
步骤
1. 创建JSON数组

以下是一个简单的JSON数组示例,其中包含具有不同数据类型的数据。在代码中使用JArray来创建JSON数组。

using Newtonsoft.Json.Linq;

JArray jsonArray = new JArray(
    new JObject(
        new JProperty("name", "John"),
        new JProperty("age", 30),
        new JProperty("married", true)
    ),
    new JObject(
        new JProperty("name", "Jane"),
        new JProperty("age", 25),
        new JProperty("married", false)
    )
);
2. 将JSON数组转换为字符串

使用JArray的ToString()方法将JSON数组转换为字符串。

string jsonArrayString = jsonArray.ToString();
3. 将JSON字符串转换为数组

使用JArray的Parse()方法将JSON字符串转换为JSON数组。

JArray jsonArray = JArray.Parse(jsonArrayString);
4. 访问JSON数组中的元素

可以使用索引器访问JSON数组中的元素,也可以在foreach循环中遍历数组。

JObject firstObject = (JObject)jsonArray[0];
string name = (string)firstObject["name"];
int age = (int)firstObject["age"];
bool married = (bool)firstObject["married"];

foreach (JObject obj in jsonArray)
{
    name = (string)obj["name"];
    age = (int)obj["age"];
    married = (bool)obj["married"];
}
结论

使用Json.NET库,处理JSON数组的转换非常简单。以上代码可以轻松地创建、序列化、反序列化和访问JSON数组中的元素。这些操作可以轻松地与其他.NET库和框架一起使用,因此Json.NET成为处理JSON数据的必备库之一。