我有一个复杂的Xml在这里我想从Xml中提取价值? [英] I Have A Complex Xml Here I Want To Extract Value From Xml ?

查看:83
本文介绍了我有一个复杂的Xml在这里我想从Xml中提取价值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

< billgroup notbill =falsesrvcdvr =1702001totalamount =0.00usercode =verified =true> 
< service billdatarequired =truecode =1702consumernamelength =45department =Limitedname =Mobile Billnotbill =falsepartpayrange =Bpartialpayment =trueversion = 1 >
< parameter code =2181932combinationkeyorder =1datatype =8displayfield =Ydynamicfield =fieldsize =10iscombinationkey =trueisconsumerkey =falsename =Bill数字/>
< parameter code =2181929combinationkeyorder =2datatype =9displayfield =Ydynamicfield =fieldsize =10iscombinationkey =trueisconsumerkey =falsename =Bill日期/>
< parameter code =2181936consumerkeyorder =1datatype =8displayfield =dynamicfield =fieldsize =12iscombinationkey =falseisconsumerkey =truename =电话号码/>
< parameter code =2181930datatype =9displayfield =dynamicfield =fieldsize =10iscombinationkey =falseisconsumerkey =falsename =截止日期(现金)/ >
< parameter code =2181939datatype =9displayfield =dynamicfield =fieldsize =10iscombinationkey =falseisconsumerkey =falsename =截止日期(Cheq)/ >
< parameter code =2181931datatype =8displayfield =dynamicfield =fieldsize =10iscombinationkey =falseisconsumerkey =falsename =到期日前的金额/> ;
< parameter code =2181935datatype =8displayfield =dynamicfield =fieldsize =10iscombinationkey =falseisconsumerkey =falsename =Amount(After Due Date) />
< parameter code =2181938datatype =8displayfield =dynamicfield =fieldsize =45iscombinationkey =falseisconsumerkey =falsename =Consumer Name/>
< parameter code =2181937datatype =8displayfield =dynamicfield =fieldsize =10iscombinationkey =falseisconsumerkey =falsename =Exchange Code/>
< parameter code =2181928datatype =8displayfield =dynamicfield =fieldsize =50iscombinationkey =falseisconsumerkey =falsename =Address 1/>
< parameter code =2181934datatype =8displayfield =dynamicfield =fieldsize =50iscombinationkey =falseisconsumerkey =falsename =Address 2/>
< parameter code =2181933datatype =8displayfield =dynamicfield =fieldsize =50iscombinationkey =falseisconsumerkey =falsename =account Number/>
< revenue amount =0.00code =1displayable =trueiscomm =Nname =Telephone Bill Chargesvariable =true/>
< / service>
< bill addedtosc =falseafterduedtallowed =truecombinationkey =132456-21 JUN 2015consumerkey =1234567890districtcode =34nodetails =falsenotbill =falsepaid =false paidamounthistory =0.00paymentamount =10.00servicecode =1702subscribed =falsetehsilcode =version =1villagecode =>
< parameter code =2181932value =132456/>
< parameter code =2181929value =2015年6月21日/>
< parameter code =2181936value =1234567890/>
< parameter code =2181930value =30-06-2015/>
< parameter code =2181939value =30-06-2015/>
< parameter code =2181931value =10/>
< parameter code =2181935value =10/>
< parameter code =2181938value =1234567890/>
< parameter code =2181937value =ABC/>
< parameter code =2181928value =/>
< parameter code =2181934value =/>
< parameter code =2181933value =123/>
< / bill>
< / billgroup>
< code>
< / code>





以上是我的xml我想从xml以上提取值?

解决方案

.NET FCL提供了解析XML的不同方法。这是我对它们的简短概述:

  1. 使用 System.Xml.XmlDocument 类。它实现了DOM接口;如果文档的大小不是太大,这种方式是最简单和最好的。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx
  2. 使用类 System.Xml .XmlTextReader ;这是最快的阅读方式,特别是你需要跳过一些数据。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx
  3. 使用类 System.Xml.Linq .XDocument ;这是类似于 XmlDocument 的最合适的方式,支持LINQ to XML Programming。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx http://msdn.microsoft.com/en-us/library/bb387063.aspx


  4. -SA


解决方案1:聘请真正的程序员。

解决方案2:DIY,开始工作,学习语言。



如果你只想要代码,那么你就错了。我们不做作业。



顺便说一下,你甚至没有告诉你想要读什么价值,所以即使是想做你的功课的人也无法做到这样做。


<billgroup notbill="false" srvcdvr="1702001" totalamount="0.00" usercode="" verified="true">
 <service billdatarequired="true" code="1702" consumernamelength="45" department="Limited" name="Mobile Bill" notbill="false" partpayrange="B" partialpayment="true" version="1">
  <parameter code="2181932" combinationkeyorder="1" datatype="8" displayfield="Y" dynamicfield="" fieldsize="10" iscombinationkey="true" isconsumerkey="false" name="Bill Number" />
  <parameter code="2181929" combinationkeyorder="2" datatype="9" displayfield="Y" dynamicfield="" fieldsize="10" iscombinationkey="true" isconsumerkey="false" name="Bill date" />
  <parameter code="2181936" consumerkeyorder="1" datatype="8" displayfield="" dynamicfield="" fieldsize="12" iscombinationkey="false" isconsumerkey="true" name="Phone Number" />
  <parameter code="2181930" datatype="9" displayfield="" dynamicfield="" fieldsize="10" iscombinationkey="false" isconsumerkey="false" name="Due Date(Cash)" />
  <parameter code="2181939" datatype="9" displayfield="" dynamicfield="" fieldsize="10" iscombinationkey="false" isconsumerkey="false" name="Due Date(Cheq)" />
  <parameter code="2181931" datatype="8" displayfield="" dynamicfield="" fieldsize="10" iscombinationkey="false" isconsumerkey="false" name="Amount before Due Date" />
  <parameter code="2181935" datatype="8" displayfield="" dynamicfield="" fieldsize="10" iscombinationkey="false" isconsumerkey="false" name="Amount (After Due Date)" />
  <parameter code="2181938" datatype="8" displayfield="" dynamicfield="" fieldsize="45" iscombinationkey="false" isconsumerkey="false" name="Consumer Name" />
  <parameter code="2181937" datatype="8" displayfield="" dynamicfield="" fieldsize="10" iscombinationkey="false" isconsumerkey="false" name="Exchange Code" />
  <parameter code="2181928" datatype="8" displayfield="" dynamicfield="" fieldsize="50" iscombinationkey="false" isconsumerkey="false" name="Address 1" />
  <parameter code="2181934" datatype="8" displayfield="" dynamicfield="" fieldsize="50" iscombinationkey="false" isconsumerkey="false" name="Address 2" />
  <parameter code="2181933" datatype="8" displayfield="" dynamicfield="" fieldsize="50" iscombinationkey="false" isconsumerkey="false" name="Account Number" />
  <revenue amount="0.00" code="1" displayable="true" iscomm="N" name="Telephone Bill Charges" variable="true" />
 </service>
 <bill addedtosc="false" afterduedtallowed="true" combinationkey="132456-21 JUN 2015" consumerkey="1234567890" districtcode="34" nodetails="false" notbill="false" paid="false" paidamounthistory="0.00" paymentamount="10.00" servicecode="1702" subscribed="false" tehsilcode="" version="1" villagecode="">
  <parameter code="2181932" value="132456" />
  <parameter code="2181929" value="21 JUN 2015" />
  <parameter code="2181936" value="1234567890" />
  <parameter code="2181930" value="30-06-2015" />
  <parameter code="2181939" value="30-06-2015" />
  <parameter code="2181931" value="10" />
  <parameter code="2181935" value="10" />
  <parameter code="2181938" value="1234567890" />
  <parameter code="2181937" value="ABC" />
  <parameter code="2181928" value="" />
  <parameter code="2181934" value="" />
  <parameter code="2181933" value="123" />
 </bill>
</billgroup>
<code>
</code>



above is my xml i want to extract the values from above xml ?

解决方案

.NET FCL offers different ways to parse XML. This is my short overview of them:

  1. Use System.Xml.XmlDocument class. It implements DOM interface; this way is the easiest and good enough if the size if the document is not too big.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx.
  2. Use the class System.Xml.XmlTextReader; this is the fastest way of reading, especially is you need to skip some data.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx.
  3. Use the class System.Xml.Linq.XDocument; this is the most adequate way similar to that of XmlDocument, supporting LINQ to XML Programming.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx, http://msdn.microsoft.com/en-us/library/bb387063.aspx.


—SA


Solution 1: Hire a real programmer.
Solution 2: DIY, Start working, learning the language.

If you just want code, you, are at the wrong place. We don't do homework.

By the way, you did not even tell which value you want to read, so even someone wanting to do your homework would be unable to do it.


这篇关于我有一个复杂的Xml在这里我想从Xml中提取价值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆