xml解析多个结点方法(C#)
解析多个结点的XML文件,格式如下:
<?xml version="1.0" encoding="utf-8"?> <response>
<flag>success</flag>
<code>1</code>
<message>成功单数:1 失败单数:0</message>
<items>
<item>
<wareCode>ABC</wareCode>
<itemCode>1000100</itemCode>
<itemId>11111236</itemId>
<inventoryType>ZP</inventoryType>
<quantity>235</quantity>
<lockQuantity>0</lockQuantity>
</item>
</items>
</response>
解析报文代码:
先取出response中的结点进行遍历,然后再取出item中的结点遍历。
var strResponse = from itemResponse in xDoc.Descendants("response")
select itemResponse;
foreach (var items in strResponse)
{
string status = items.Element("flag").Value;
if (status == "success")
{
var itemResponse = from itemQuantity in xDoc.Descendants("item")
select itemQuantity;
foreach (var item in itemResponse)
{
obj.PRODUCT_UPC = item.Element("itemCode").Value;
obj.PRODUCT_KD_PRODCODE = item.Element("itemId").Value;
obj.QUANTITY = Convert.ToInt64(item.Element("quantity").Value);
obj.PRODUCT_ID = prod_kd.PRODUCT_ID;
obj.LOCKQUANTITY = Convert.ToInt64(item.Element("lockQuantity").Value);
obj.PRODUCT_CODE = prod_kd.PRODUCT_CODE;
obj.PRODUCT_NAME = prod_kd.PRODUCT_NAME;
}
}
}
xml解析多个结点方法(C#)的更多相关文章
- XML解析的二种方法之dom解析
XML解析的二种方法:dom解析和sax解析 文件大小 存储位置 读取速度 dom解析 小文件 放在内存中 快 sax解析 ...
- python实现XML解析的三种方法
python实现XML解析的三种方法 三种方法:一是xml.dom.*模块,它是W3C DOM API的实现,若需要处理DOM API则该模块很适合:二是xml.sax.*模块,它是SAX API的实 ...
- xml解析-jaxp遍历结点
jaxp遍历结点 把xml中所有的结点都打印出来 // 遍历结点把所有元素名称打印出来 / 1.创建解析器工厂 * 2.根据解析器工厂创建解析器 * 3.解析xml返回document * * 4.得 ...
- PHP中的XML解析的5种方法
[前言]不管是桌面软件开发,还是WEB应用,XML无处不在!然而在平时的工作中,仅仅是使用一些已经封装好的类对XML对于处理,包括生成,解析等.假期有空,于是将PHP中的几种XML解析方法总结如下: ...
- xml解析-jaxp删除结点
jaxp删除结点 / 删除sex结点 * 1.创建解析器工厂 * 2.根据解析器工厂创建解析器 * 3.解析xml返回document * * 4.得到sex结点 * 5.得到sex的父节点 getP ...
- xml解析-jaxp修改结点
jaxp修改结点 / 修改第一个p1下面的sex内容是nan * 1.创建解析器工厂 * 2.根据解析器工厂创建解析器 * 3.解析xml返回document * 4.得到sex item方法 * 5 ...
- xml解析-jaxp添加结点
jaxp添加结点 eg: //在第一个下面添加nv / 1.创建解析器工厂 * 2.根据解析器工厂创建解析器 * 3.解析xml返回document * * 4.得到第一个p1 * -得到所有p1使用 ...
- XML解析的四种方法 建议使用demo4j解析 测试可以用
https://www.cnblogs.com/longqingyang/p/5577937.html 4.DOM4J解析 特征: 1.JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功 ...
- xml解析-jaxp查询结点
jaxp查询结点 eg://获取name的值 // person.xml <?xml version="1.0" encoding="UTF-8"?> ...
随机推荐
- 基于stm32的can总线彻底研究
1.CAN总线的初始化 void can_init(void){ CAN_InitTypeDef CAN_InitStructure; CAN_FilterInitT ...
- javax.el.PropertyNotFoundException:Property 'statisDate' not found on type java.lang.String
1.错误描述 javax.el.PropertyNotFoundException:Property 'statisDate' not found on type java.lang.String 2 ...
- angular路由操作中'#'字符的解决办法
var app=angular.module("myapp",["ngRoute"]);app.controller("ctr",funct ...
- 深入理解javascript中的事件循环event-loop
前面的话 本文将详细介绍javascript中的事件循环event-loop 线程 javascript是单线程的语言,也就是说,同一个时间只能做一件事.而这个单线程的特性,与它的用途有关,作为浏览器 ...
- ProgressBar、ProgessDialog用法解析
一.ProgressBar 1. 常用类型 1.1 不确定式圆形进度条 style="@android:style/Widget.Holo.Light.ProgressBar" s ...
- 【POJ2387】Til the Cows Come Home (最短路)
题面 Bessie is out in the field and wants to get back to the barn to get as much sleep as possible bef ...
- MySQL的sum()函数
如下图,这是一个关于用户参加活动,每个活动会给这位用户评分的一个表: 用户1参加了A活动,评分100: 用户2参加了B活动,评分98,又参加了D活动,评分10: 用户3参加了C活动,评分99 需求:把 ...
- JavaScript实现强制重定向至HTTPS页面
<script type="text/javascript"> var targetProtocol = "https:"; if (window. ...
- php 创建和修改文件内容
file_put_contents写入文件 我们先来学习第一种写入文件的方式: int file_put_contents ( string $文件路径, string $写入数据]) 功能:向指定的 ...
- Myeclipse配置tomcat,以及简单的Myeclipse的配置
第一次总结技术相关的东西,那就坚持下去每天写一点.[有错欢迎指正,本人小白,轻虐] 首先,(以我的为例子吧)需要准备原材料,当然了也需要根据自己的机器底层架构选择了---Myeclipse(2015) ...