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="" nameCN=""><![CDATA[]]></signer>
</step>
<step>
<signer staffID="" nameCN=""><![CDATA[]]></signer>
</step>
</specialty>
<specialty nameCN="节能">
<step>
<signer staffID="" nameCN=""><![CDATA[]]></signer>
<signer staffID="" nameCN=""><![CDATA[]]></signer>
</step>
<step>
<signer staffID="" nameCN=""><![CDATA[]]></signer>
<signer staffID="" nameCN=""><![CDATA[]]></signer>
</step>
</specialty>

输出 json 结果:

{
"@nameCN": "电测",
"step": [
{
"signer": {
"@staffID": "",
"@nameCN": "",
"#cdata-section":
}
},
{
"signer": {
"@staffID": "",
"@nameCN": "",
"#cdata-section":
}
}
]
},
{
"@nameCN": "节能",
"step": [
{
"signer": [
{
"@staffID": "",
"@nameCN": "",
"#cdata-section":
},
{
"@staffID": "",
"@nameCN": "",
"#cdata-section":
}
]
},
{
"signer": [
{
"@staffID": "",
"@nameCN": "",
"#cdata-section":
},
{
"@staffID": "",
"@nameCN": "",
"#cdata-section":
}
]
}
]
}

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

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

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

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

    使用Json.NET转换xml成json时,如果xml只有单个节点,但json要求是数组形式[], JsonConvert.SerializeXmlNode 并不能自动识别 示例如下: RecordA ...

  2. xml转换成数组array

    直接上代码,成功转换 if($data){ //返回来的是xml格式需要转换成数组再提取值,用来做更新 $startnum = strpos($data,"<xml>" ...

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

    前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...

  4. js 判断是否为数组的方式 及 类数组转换成数组格式

    1. 判断是否为数组的通用方式 Object.prototype.toString.call(o)=='[object Array]' 其他方式: typeof ,  instanceof,  ary ...

  5. XML转换成数组方法

    <?php function xmlToArray2($xml) { // 将XML转为array $array_data = json_decode(json_encode(simplexml ...

  6. 在 AngularJS 中将 XML 转换为 JSON

    在这篇文章中,我们将谈谈如何在Angular JS中将XML文件转换为JSON.大家都知道Angular JS是开发应用程序的JavaScript框架.所以基本上Angular  JS期望得 到的响应 ...

  7. 返回Json和XML两种格式

    由于项目需要,同一接口支持根据参数不同返回XML和Json两种格式的数据,在网上看了很多大多是加后缀的方式来实现返回不同格式数据的,后来看了一篇http://www.importnew.com/276 ...

  8. 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 ...

  9. 将XML转换为JSON并强制数组

    string xml = @"<person id='1'> <name>Alan</name> <url>http://www.google ...

随机推荐

  1. SDWebImage 原理及使用-b

    SDWebImage托管在github上.https://github.com/rs/SDWebImage 这个类库提供一个UIImageView类别以支持加载来自网络的远程图片.具有缓存管理.异步下 ...

  2. bzoj 1138: [POI2009]Baj 最短回文路 dp优化

    1138: [POI2009]Baj 最短回文路 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 161  Solved: 48[Submit][Sta ...

  3. mysql Partition(分区)初探

    mysql Partition(分区)初探   表数据量大的时候一般都考虑水平拆分,即所谓的sharding.不过mysql本身具有分区功能,可以实现一定程度 的水平切分.  mysql是具有MERG ...

  4. Android学习及如何利用android来赚钱

    一.如何学习Android      android开发(这里不提platform和底层驱动)你需要对Java有个良好的基础,一般我们用Eclipse作为开发工具.对于过多的具体知识详细介绍我这里不展 ...

  5. android Mediaplayer硬件解码浅探

    在讨论stagefright如何调用硬件解码之前,我们要先清楚几个问题. 我不展开这几个结论是如何得来的,因为这部分属于进程间通信binder的理解,和多媒体本身无关. 一.问题空间 这个有点像方法学 ...

  6. Ubuntu下安装Qt4.5(包括X86和ARM版本)

    条件:TQ2440开发板,虚拟机安装的Ubuntu10.04,安装好天嵌自带的GCC交叉编译器参考:http://blog.csdn.net/newnewman80/article/details/6 ...

  7. 【HDOJ】3436 Queue-jumpers

    离散化+伸展树. /* 3436 */ #include <iostream> #include <string> #include <map> #include ...

  8. bzoj2342

    shoi题目好坑爹 首先自己测发现这道题如果用后缀数组+rmq处理每个点回文串能延伸长度的话会TLE (当然我用的是倍增+ST的方法,如果用三分构建后缀数组+笛卡尔树处理rmq我就不知道了): 关于最 ...

  9. BZOJ2287: 【POJ Challenge】消失之物

    2287: [POJ Challenge]消失之物 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 254  Solved: 140[Submit][S ...

  10. C++ const&的一个特性

    最近在搜索类似scope exit的实现时,除了发现已经有人向标准委员会提出意见,还得到一些意外的C++特性,这个特性一直都存在,而且很有趣 http://herbsutter.com/2008/01 ...