社区
C#
帖子详情
求c#读取XML文件一个节点的方法
hejialin666
2008-07-08 09:36:54
<a>
<b>bbb</b>
<c>ccc</c>
</a>
XML文件如上(不好意思只是大概描述一下,不过这个问题很严重的,明天就要交的)
读取<b>节点的值bbb
请高手指点一下!
...全文
299
20
打赏
收藏
求c#读取XML文件一个节点的方法
bbb ccc XML文件如上(不好意思只是大概描述一下,不过这个问题很严重的,明天就要交的) 读取节点的值bbb 请高手指点一下!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mawering
2008-07-10
打赏
举报
回复
public string readXml(string xmlpath, string element)//xmlpath是xml的文件名,element是你要查询的节点的名称,就是b
这里的element就是你要查询的节点的名称,你想要查那个节点的InnerText,就写那个节点的名称,你要查b节点的InnerText,就在引用这个方法时将参数设为"b",同样你如果要查a 节点的InnerText,那你在引用这个方法时参数就设为"a",总之就是你要查找的节点的名称,这个方法返回的是 找到的选择匹配 XPath 表达式的第一个 XmlNode,所以参数是b那就不会找a节点,但是如果有2个或以上的b节点,那就只返回找到的第一个节点的值,有点啰嗦,不知道你能搞明白不。
panw520
2008-07-09
打赏
举报
回复
[Quote=引用 12 楼 ericzhangbo1982111 的回复:]
你把你的xml文件拿出来
不然怎么知道xmlpath是什么啊
<a>
<b>bbb </b>
<c>ccc </c>
</a>
xmldocument.loadXML(xmlString)or xmldocument.load(xmlfilepath)
result= xmldocument.SelectSingleNode("/a/b") ;
[/Quote]
mawering
2008-07-09
打赏
举报
回复
多了个 } ,删掉就行了
ericzhangbo1982111
2008-07-09
打赏
举报
回复
你把你的xml文件拿出来
不然怎么知道xmlpath是什么啊
<a>
<b>bbb </b>
<c>ccc </c>
</a>
xmldocument.loadXML(xmlString)or xmldocument.load(xmlfilepath)
result= xmldocument.SelectSingleNode("/a/b") ;
denanjin
2008-07-09
打赏
举报
回复
document.getElementsByTagName("b");
mawering
2008-07-09
打赏
举报
回复
public string readXml(string xmlpath, string element)//xmlpath是xml的文件名,element是你要查询的节点的名称,就是b
{
try
{
string value = "";
XmlDocument doc = new XmlDocument();
doc.Load(xmlpath);
XmlNode node = doc.SelectSingleNode("//" + element);
value = node.InnerText;
}
return value;
}
catch (Exception e)
{
return "";
}
}
yatobiaf
2008-07-09
打赏
举报
回复
XmlNode result = document.SelectSingleNode(xpath);
SelectSingleNode返回的应该不是XmlNode而是string吧,这是我猜的,楼主可以看看对不对。
一品梅
2008-07-09
打赏
举报
回复
Doc.SelectSingleNode(xpath)
hejialin666
2008-07-09
打赏
举报
回复
string xpath = @"\a\b";
XmlNode result = document.SelectSingleNode(xpath);
return result.InnerText;
楼上的,这个有什么错误吗?怎么到第二行就错误了?
chinaicm
2008-07-09
打赏
举报
回复
[Quote=引用 1 楼 ermachao 的回复:]
xmldocument.loadXML(xmlString)or xmldocument.load(xmlfilepath)
result= xmldocument.SelectSingleNode(xpath)
[/Quote]
xpath="\a\b";
hejialin666
2008-07-09
打赏
举报
回复
[Quote=引用 3 楼 amandag 的回复:]
http://blog.csdn.net/amandag/archive/2008/07/08/2623320.aspx
http://blog.csdn.net/amandag/archive/2008/07/08/2623322.aspx
[/Quote]
楼上的这种方法我会,你的XML结构是
<a>
<aa1>
<b>bbb </b>
<c>ccc </c>
<aa2>
<b>bbb</b>
<c>ccc</c>
</a>
和我的不同之处就是根节点下有多级节点,我的要求是:根节点下没有多级结点的情况
hejialin666
2008-07-09
打赏
举报
回复
楼上的写一些注释呀,
strValue = Convert.ToString(ds.Tables[fNode].Rows[intKey][strSection]);
上面这行是什么意思?ds是什么?
还有你的XML格式是什么也说明一下呀!
谢谢!
xuyang840117
2008-07-09
打赏
举报
回复
/// <summary>
/// 获取fNode父节点下第intKey行 strSection的属性值
/// </summary>
/// <param name="fNode">父节电名称</param>
/// <param name="intKey">行数</param>
/// <param name="strSection">属性名称</param>
/// <returns></returns>
public string Getting(string fNode, int intKey, string strSection)
{
string strValue = "";
try
{
strValue = Convert.ToString(ds.Tables[fNode].Rows[intKey][strSection]);
return strValue;
}
catch (Exception ex)
{
System.Console.WriteLine(ex.Message);
throw;
}
}
hejialin666
2008-07-09
打赏
举报
回复
是不是 "//" + element 的意思就已经跳过a节点了?
hejialin666
2008-07-09
打赏
举报
回复
[Quote=引用 10 楼 mawering 的回复:]
public string readXml(string xmlpath, string element)//xmlpath是xml的文件名,element是你要查询的节点的名称,就是b
{
try
{
string value = "";
XmlDocument doc = new XmlDocument();
doc.Load(xmlpath);
XmlNode node = doc.SelectSingleNode("//" + element);
value = node…
[/Quote]
问个问题:XmlNode node = doc.SelectSingleNode("//" + element);
这句不用考虑a节点吗?能够跳过a节点找到b节点吗?
hejialin666
2008-07-09
打赏
举报
回复
[Quote=引用 9 楼 yatobiaf 的回复:]
XmlNode result = document.SelectSingleNode(xpath);
SelectSingleNode返回的应该不是XmlNode而是string吧,这是我猜的,楼主可以看看对不对。
[/Quote]
SelectSingleNode返回的就是XmlNode类型的
mawering的方法不错,我试一试
KingSnaker
2008-07-08
打赏
举报
回复
http://www.w3school.com.cn/xpath/index.asp
amandag
2008-07-08
打赏
举报
回复
http://blog.csdn.net/amandag/archive/2008/07/08/2623320.aspx
http://blog.csdn.net/amandag/archive/2008/07/08/2623322.aspx
hejialin666
2008-07-08
打赏
举报
回复
xpath 是什么?
xmldocument.SelectSingleNode()返回的是什么类型?
ermachao
2008-07-08
打赏
举报
回复
xmldocument.loadXML(xmlString)or xmldocument.load(xmlfilepath)
result= xmldocument.SelectSingleNode(xpath)
C#
读取
XML文件
并写入数据库
下面,我们将详细介绍三种使用
C#
读取
XML文件
并将其写入数据库的
方法
。 1. **使用XmlReader类逐行
读取
并写入** - `XmlReader` 是
一个
高效的流式
读取
器,不占用大量内存。通过创建`XmlReader`实例,我们可以逐个
节点
...
C#
读取
XML 的
节点
,以及属性
本篇文章将深入探讨如何在
C#
中操作
XML文件
,尤其是
读取
XML
节点
和属性。 首先,我们来了解基本的XML结构。XML文档由一系列元素组成,每个元素可以有零个或多个子元素,以及属性。元素通过开始标签(如 `<element>`)...
用
C#
快速
读取
XML文件
,并遍历
2. **XmlDocument类**:这个类用于加载
XML文件
,并提供遍历XML
节点
的
方法
。例如,使用Load()
方法
加载
XML文件
,然后通过SelectNodes()或SelectSingleNode()
方法
查询特定
节点
。 3. **XPath查询**:XPath是一种在XML...
C#
XML文件
读取
示例
在
C#
编程环境中,XML...以上就是
C#
中
读取
XML文件
的四种常见
方法
。选择哪种
方法
取决于具体的需
求
,如文件大小、性能要
求
以及是否需要对XML进行复杂的查询操作。在实际开发中,应根据项目需
求
灵活选择并优化代码。
C#
读取
XML教程和例子(有代码)
### 直接
读取
XML
节点
#### 1. 使用`XmlDocument`类 `XmlDocument`是.NET Framework提供的
一个
类,它允许我们加载XML文档并对其进行
读取
和修改。以下是
一个
简单的示例: ```csharp using System.Xml; // 加载XML...
C#
111,092
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章