Javascript 修改json的结构
我试图用json修改以下文本。以下链包含以下结构:Javascript 修改json的结构,javascript,c#,json,Javascript,C#,Json,我试图用json修改以下文本。以下链包含以下结构: { "cabecera": { "tipo_cambio": "", "fecha_emision": "", "total": "" }, "detalle": { "940b130369614bd6b687dc5b41623439": { "producto": "94115891", "detalle_adicional": "", "cantidad":
{
"cabecera": {
"tipo_cambio": "",
"fecha_emision": "",
"total": ""
},
"detalle": {
"940b130369614bd6b687dc5b41623439": {
"producto": "94115891",
"detalle_adicional": "",
"cantidad": "",
"precio_unitario": "",
"subtotal": "",
"total": ""
},
"6cbdcef2bbff4b059c8de7432c9aa5f2": {
"producto": "6738756",
"detalle_adicional": "",
"cantidad": "",
"precio_unitario": "",
"subtotal": "",
"total": ""
}
}
}
我想将其修改为以下结构,以便像“940b130369614bd6b687dc5b41623439”这样的代码被解除,dtalle变成And数组
{
"cabecera": {
"tipo_cambio": "",
"fecha_emision": "",
"total": ""
},
"detalle": [
{
"producto": "94115891",
"detalle_adicional": "",
"cantidad": "",
"precio_unitario": "",
"subtotal": "",
"total": ""
},
{
"producto": "6738756",
"detalle_adicional": "",
"cantidad": "",
"precio_unitario": "",
"subtotal": "",
"total": ""
}
]
}
有没有办法在C#中实现这一点?这里有一个小型C#程序可以解决这个问题
string origJson =
@"{
""cabecera"": {
""tipo_cambio"": """",
""fecha_emision"": """",
""total"": """"
},
""detalle"": {
""940b130369614bd6b687dc5b41623439"": {
""producto"": ""94115891"",
""detalle_adicional"": """",
""cantidad"": """",
""precio_unitario"": """",
""subtotal"": """",
""total"": """"
},
""6cbdcef2bbff4b059c8de7432c9aa5f2"": {
""producto"": ""6738756"",
""detalle_adicional"": """",
""cantidad"": """",
""precio_unitario"": """",
""subtotal"": """",
""total"": """"
}
}
}";
JObject obj = JObject.Parse(origJson);
JArray detalleChilds = new JArray(obj.SelectToken("detalle").Select(x => x.Children()));
obj.Remove("detalle");
obj.Add("detalle", detalleChilds);
Console.WriteLine(obj);
为了使用这个示例,您需要安装Newtonsoft.Json NuGet
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
您自己尝试过吗?你知道你想用哪种语言做吗?用动态类型JArray.Parse in.nett试试吧。非常感谢