取XML节点中的值 xml 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比如:xml中的信息:<startporcdata> <header> <c_dVersion value="2" /> <c_dMagic value="1139373359" /> <c_dItemCount value="17" /> <c_dDataErrorCode value="0" /> <c_dStartTime value="339500" /> <c_dLogTime value="129687576938437500" /> </header></startporcdata>C#代码: //定义路径 string myXmlFilePath = "E:\\12.19.xml"; //实例化一个xml文档 XmlDocument myXmlDoc = new XmlDocument(); //加载xml文档 myXmlDoc.Load(myXmlFilePath); //获得第一个为startporcdata的根节点 XmlNode rootNode = myXmlDoc.SelectSingleNode("startporcdata"); //获取根节点中串联值 string innertext = rootNode.InnerText.ToString(); //获取根节点虽有子节点结构 string innerXmlInfo = rootNode.InnerXml.ToString(); //获取根节点在内的整个xml的结构 string outXmlInfo = rootNode.OuterXml.ToString(); //获取根节点的所有自己点 XmlNodeList firstLevelNodeList = rootNode.ChildNodes; //遍历所有子节点 foreach (XmlNode node in firstLevelNodeList) { string inner = node.InnerXml; string outx = node.OuterXml; //获取所有子节点的属性 XmlAttributeCollection attributeCol = node.Attributes; //遍历自己点属性 foreach (XmlAttribute attri in attributeCol) { //获取每个节点属性的key,value值 string name = attri.Name; string value = attri.Value; Console.WriteLine("{0}={1}", name, value); } //判断子节点是否还有子节点 if (node.HasChildNodes) {//如果有子节点则执行 //获取子节点中的第一个孩子 XmlNode secondeLevelNode1 = node.FirstChild; //得到第一个孩子的名称 string name = secondeLevelNode1.Name; string innetext = secondeLevelNode1.InnerText.ToString(); string outxml = secondeLevelNode1.OuterXml.ToString(); //获得第一个孩子的串联值 string innerxml = secondeLevelNode1.InnerXml.ToString(); // Console.WriteLine("{0}={1}", name, innerxml); XmlNode secondLevelNode2 = node.ChildNodes[4]; XmlNode secondLevelNode3 = node.OwnerDocument; name = secondLevelNode2.Name; innerxml = secondLevelNode2.InnerXml; // Console.WriteLine("{0}={1}", name, innerxml); //定义保存路径 string save = "e:\\StartTime.log"; //输出日志文件并保存 using (System.IO.StreamWriter sw = System.IO.File.AppendText(save)) { sw.WriteLine(name); sw.Dispose(); } xml用xslt转换到htm格式时中文被自动urlenconde的问题 (急切求助)C#如何调用"VC++.Net下生成的MFC DLL"?(在线等) 菜鸟学编程:C#如何实现e的x次方的计算?附上公式 高分求把图片存到数据库中(C/S模式 WINFORM) 客户端激活对象的释放 CLR概念问题 C#中如何使得form1和form3传递事件问题 水晶报表,又是水晶报表!!!救命呀!!!报表查询引擎错误! 有请高手花点时间 DataReader如何获取记录数量的问题 C# 模拟HTTP请求的服务器 Socket截获本机数据包问题
xml中的信息:
<startporcdata>
<header>
<c_dVersion value="2" />
<c_dMagic value="1139373359" />
<c_dItemCount value="17" />
<c_dDataErrorCode value="0" />
<c_dStartTime value="339500" />
<c_dLogTime value="129687576938437500" />
</header>
</startporcdata>
C#代码: //定义路径
string myXmlFilePath = "E:\\12.19.xml";
//实例化一个xml文档
XmlDocument myXmlDoc = new XmlDocument();
//加载xml文档
myXmlDoc.Load(myXmlFilePath);
//获得第一个为startporcdata的根节点
XmlNode rootNode = myXmlDoc.SelectSingleNode("startporcdata");
//获取根节点中串联值
string innertext = rootNode.InnerText.ToString();
//获取根节点虽有子节点结构
string innerXmlInfo = rootNode.InnerXml.ToString();
//获取根节点在内的整个xml的结构
string outXmlInfo = rootNode.OuterXml.ToString();
//获取根节点的所有自己点
XmlNodeList firstLevelNodeList = rootNode.ChildNodes;
//遍历所有子节点
foreach (XmlNode node in firstLevelNodeList)
{
string inner = node.InnerXml;
string outx = node.OuterXml;
//获取所有子节点的属性
XmlAttributeCollection attributeCol = node.Attributes;
//遍历自己点属性
foreach (XmlAttribute attri in attributeCol)
{
//获取每个节点属性的key,value值
string name = attri.Name;
string value = attri.Value;
Console.WriteLine("{0}={1}", name, value);
}
//判断子节点是否还有子节点
if (node.HasChildNodes)
{//如果有子节点则执行
//获取子节点中的第一个孩子
XmlNode secondeLevelNode1 = node.FirstChild;
//得到第一个孩子的名称
string name = secondeLevelNode1.Name;
string innetext = secondeLevelNode1.InnerText.ToString();
string outxml = secondeLevelNode1.OuterXml.ToString();
//获得第一个孩子的串联值
string innerxml = secondeLevelNode1.InnerXml.ToString();
// Console.WriteLine("{0}={1}", name, innerxml);
XmlNode secondLevelNode2 = node.ChildNodes[4];
XmlNode secondLevelNode3 = node.OwnerDocument;
name = secondLevelNode2.Name;
innerxml = secondLevelNode2.InnerXml;
// Console.WriteLine("{0}={1}", name, innerxml);
//定义保存路径
string save = "e:\\StartTime.log";
//输出日志文件并保存
using (System.IO.StreamWriter sw = System.IO.File.AppendText(save))
{
sw.WriteLine(name);
sw.Dispose();
}