{"FTreeEntity": [ { "FCHILDUNITID": { "FNumber": "" }, "FEntrySource": "1", "FDOSAGETYPE": "2", "FISSUETYPE": "1", "FOverControlMode": "", "FMATERIALIDCHILD": { "FNumber": "" },}使用c#。解析Json数组的层级并替换Json数组中的值
时间: 2023-07-03 08:25:21 浏览: 84
以下是一个使用 C# 解析和替换 JSON 数组的示例代码:
```csharp
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
// 原始的 JSON 数组字符串
string jsonStr = @"
[
{
""FTreeEntity"": [
{
""FCHILDUNITID"": {
""FNumber"": """"
},
""FEntrySource"": ""1"",
""FDOSAGETYPE"": ""2"",
""FISSUETYPE"": ""1"",
""FOverControlMode"": """",
""FMATERIALIDCHILD"": {
""FNumber"": """"
}
}
]
}
]
";
// 将 JSON 字符串解析为 JArray 对象
JArray jsonArray = JArray.Parse(jsonStr);
// 找到需要替换的值所在的位置,替换为新的值
jsonArray[0]["FTreeEntity"][0]["FCHILDUNITID"]["FNumber"] = "123";
jsonArray[0]["FTreeEntity"][0]["FMATERIALIDCHILD"]["FNumber"] = "456";
// 将 JArray 对象转换为 JSON 字符串
string newJsonStr = JsonConvert.SerializeObject(jsonArray);
// 打印替换后的 JSON 字符串
Console.WriteLine(newJsonStr);
```
该代码使用了 Newtonsoft.Json 库,将原始的 JSON 数组字符串解析为 JArray 对象,然后找到需要替换的值所在的位置,将其替换为新的值,最后将 JArray 对象转换为 JSON 字符串并打印出来。
阅读全文