json.net xml转换为json格式时,如何将指定节点转换成数组

 using System.Xml.Linq;
 using Newtonsoft.Json;

 Response.ContentType = "application/json";
 XDocument xdoc = XDocument.Load(path);
 Response.Write(JsonConvert.SerializeXNode(xdoc));

xml 片段 :

<specialty nameCN="电测">
        <step>
            <signer staffID="800706" nameCN=""><![CDATA[]]></signer>
        </step>
        <step>
            <signer staffID="090477" nameCN=""><![CDATA[]]></signer>
        </step>
    </specialty>
    <specialty nameCN="节能">
        <step>
            <signer staffID="800608" nameCN=""><![CDATA[]]></signer>
            <signer staffID="800808" nameCN=""><![CDATA[]]></signer>
        </step>
        <step>
            <signer staffID="800602" nameCN=""><![CDATA[]]></signer>
            <signer staffID="800803" nameCN=""><![CDATA[]]></signer>
        </step>
    </specialty>

输出 json 结果:

{
  "@nameCN": "电测",
  "step": [
    {
      "signer": {
        "@staffID": "800706",
        "@nameCN": "",
        "#cdata-section":
      }
    },
    {
      "signer": {
        "@staffID": "090477",
        "@nameCN": "",
        "#cdata-section":
      }
    }
  ]
},
{
  "@nameCN": "节能",
  "step": [
    {
      "signer": [
        {
          "@staffID": "800608",
          "@nameCN": "",
          "#cdata-section":
        },
        {
          "@staffID": "800808",
          "@nameCN": "",
          "#cdata-section":
        }
      ]
    },
    {
      "signer": [
        {
          "@staffID": "800602",
          "@nameCN": "",
          "#cdata-section":
        },
        {
          "@staffID": "800803",
          "@nameCN": "",
          "#cdata-section":
        }
      ]
    }
  ]
}

上面的结果 用红色标记出来的就是差别,step下有多个signer节点时,输出结果signer是数组

只有1个signer节点 输出signer不是数组,如何在只有一个signer节点时也输出为数组

时间: 2024-08-26 08:16:57

json.net xml转换为json格式时,如何将指定节点转换成数组的相关文章

xml转换为json格式时,如何将指定节点转换成数组 Json.NET

使用Json.NET转换xml成json时,如果xml只有单个节点,但json要求是数组形式[], JsonConvert.SerializeXmlNode 并不能自动识别 示例如下: RecordArray要求是数组格式 <root> <Record> </Record> <RecordArray> <a>1</a> <b>2</b> </RecordArray> </root> 转换

JSON取代XML?--JSON入门指南

定义 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等). 这些特性使JSON成为理想的数据交换语言. JSON研究中要关注的命题 1.JSON与XML的比较: 同 XML 或 HTML 片段相比,JSON 提供了更好的简单性和灵活性. 2.JSON序列化的操作: 参考文献 1.JSON

Android:在设置Button上面的内容(含字母时)字母被强制转换成了大写

之前Button中的内容一直是中文,今天无意用了英文,偶然发现设置Button上面的内容(含字母时)字母被转换成了大写. 原因有可能是:Android 5.0的sdk在新建项目时的默认主题是android:theme="@style/AppTheme"的关系.当我把主题删掉后,回复正常了. 解决的办法有: 1.修改主题样式 2.在设置Button内容是加上android:textAllCaps="false",使其不会自动转换为大写 默认情况下(字母被转换成了大写)

XML转换成数组方法

<?php function xmlToArray2($xml) { // 将XML转为array $array_data = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true); return $array_data; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition

android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件

前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xstream 二: 把对象转换成xml android XMl 解析神奇xstream 三: 把复杂对象转换成 xml android XMl 解析神奇xstream 四: 将复杂的xml文件解析为对象 1.建立JavaBeen package com.android10; public class

WORD格式的文档如何在线转换成EXCEL格式

WORD格式的文档如何在线转换成EXCEL格式,经常用办公软件的都知道在WORD文档里面是可以插入EXCEL表格的,但是WORD文档却不能将里面的数据直接转换成EXCEL格式,那有没有方法可以促成这一转换的呢,请看下面操作.第一步:打开电脑,进入浏览器搜索"迅捷pdf在线转换器"找到相应的网页,并点进去.第二步:进入在线转换器的首页后,可以看到页面有很多关于办公的功能选项,我们选择文档转换,并在弹出的下拉框内选择"word转excel". 第三步:进入转换器的功能页

java 中xml转换为json对象

1.前提须要jar包: json-lib-2.4-jdk15.jar 和 xom-1.2.5.jar ,maven 仓库: net.sf.json-lib json-lib 2.4 jdk15 xom xom 1.2.5 2.代码部分: public static JSON xmlToJson(String xml) { XMLSerializer xmlSerializer = new XMLSerializer(); if(xml!=null && !"".equa

如何在AJAX的毁掉函数中传递JSON数据?如何在控制器中接受并转换成数组?

首先,我们经过测试(或者你平时的开发经验)知道,在AJAX的回调函数中使用get或者post方式可以传递字符串(不信可以自己去写实例测试,不过要注意:get方式有数据量的限制): 方法一:我们将ajax的请求放回的JSON数组转换成字符串,然后在回调函数中get过去: a.html页面的AJAX请求代码: b.后台两个处理函数(尤其注意第二个是回调函数指向的处理函数): 方法二:我们在回调函数中直接处理发送一个新的AJAX请求(也可以写成匿名函数),将ajax请回来的JSON数组转化为字符串作为

android XMl 解析神奇xstream 三: 把复杂对象转换成 xml

前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xstream 二: 把对象转换成xml 1.JavaBeen package com.android10; public class Person { String pName ; String pAge ; public String getpName() { return pName; } pub