xml文件格式如下:
<?xml version="1.0" encoding="UTF-8" ?>
<Product type="15" total="35">
  <type>
    <T gid="1" sum="100" />
    <T gid="2" sum="200" />
    <T gid="3" sum="100" />
  </type>
  <Mobile>
     <G gn="诺基亚" pr="1800" sum="100" />
    <G gn="摩托罗拉" pr="1700" sum="200" />
    <G gn="三星" pr="1600" sum="300" />
    <G gn="飞利浦" pr="1750" sum="90" />
  </Mobile>
</Product>
//-----------------------------------
我需要读取Product节点的type(15) total(35)值 以及 Mobile节点下的子节点G里面的属性gn、pr、sum的值.
最好把type节点下的T 属性也读取出来
XmlTextReader xml = new XmlTextReader(xmlfile);
while (xml.Read())
{       这里如何写代码?
      textBox1 .AppendText();//将属性值分行输出至textBox1,格式为:商品:诺基亚 - 价钱:1800 - 数量:100      } class MyXMLTextReader
{
static void Main(string[] args)
{
XmlTextReader xml = new XmlTextReader(@"Product.xml");
xml.WhitespaceHandling = WhitespaceHandling.None; while (xml.Read())
{
if (xml.NodeType == XmlNodeType.Element)
{
if (xml.Name == "Product")
ReadTypeAndTotal(xml);
else if (xml.Name == "Mobile")
ReadG(xml);
}
} Console.ReadKey(true);
} // 读取Product节点的type(15) total(35)值
private static void ReadTypeAndTotal(XmlTextReader xml)
{
Console.Write("Product节点的type: ");
Console.WriteLine(xml.GetAttribute("type"));
Console.Write("Product节点的total: ");
Console.WriteLine(xml.GetAttribute("total"));
} // Mobile节点下的子节点G里面的属性gn、pr、sum的值
private static void ReadG(XmlTextReader xml)
{
Console.WriteLine();
while (xml.Read())
{
if (xml.NodeType == XmlNodeType.Element)
{
if (xml.Name != "G")
break; Console.Write("商品:");
Console.Write(xml.GetAttribute("gn"));
Console.Write(" - ");
Console.Write("价钱:");
Console.Write(xml.GetAttribute("pr"));
Console.Write(" - ");
Console.Write("数量:");
Console.WriteLine(xml.GetAttribute("sum"));
}
}
}
}
 

最新文章

  1. 使用maven将代码到私服
  2. solr连接数据库配置
  3. C++混合编程之idlcpp教程Lua篇(7)
  4. oracle 内存结构 share pool sql解析的过程
  5. 面向 Java 开发人员的 Ajax: 构建动态的 Java 应用程序
  6. Linux 继续进阶
  7. JavaScript的组成—ECMAScript、BOM和DOM
  8. Cows(poj 2481 树状数组)
  9. 魔棒工具--RegionGrow算法简介
  10. wamp的安装--亲测有用
  11. ios 获取当前设备信息、内存
  12. CSS实现横列布局的方法总结
  13. c#委托中的匿名方法和lambda表达式
  14. 分析轮子(七)- RandomAccess.java
  15. UOJ219 NOI2016 优秀的拆分 二分、字符串哈希
  16. 用webstorm来开发微信小程序之less的配置
  17. WPF的MediaElement指定Source无法播放问题解决
  18. 进阶篇:4.3)DFA设计指南:防错设计( 防呆设计)
  19. HTML和CSS实现常见的布局
  20. kafka搭建笔记

热门文章

  1. linux服务搭建----ssh服务开启
  2. Android开发技巧——自定义控件之组合控件
  3. Struct和Union在内存大小上的区别
  4. rails项目编写中的一些小技巧小心得
  5. was上的应用程序部分启动的原因
  6. search for a range(找出一个数在数组中开始和结束位置)
  7. Axis创建webservice客户端和服务端
  8. Java实现发送邮件(可配置)忘记密码,发送邮件
  9. ubuntu10.04 安装oracle server 版 笔记
  10. Android 源码中的设计模式