社区
C#
帖子详情
求c#读取XML文件一个节点的方法
hejialin666
2008-07-08 09:36:54
<a>
<b>bbb</b>
<c>ccc</c>
</a>
XML文件如上(不好意思只是大概描述一下,不过这个问题很严重的,明天就要交的)
读取<b>节点的值bbb
请高手指点一下!
...全文
297
20
打赏
收藏
求c#读取XML文件一个节点的方法
bbb ccc XML文件如上(不好意思只是大概描述一下,不过这个问题很严重的,明天就要交的) 读取节点的值bbb 请高手指点一下!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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相关
节点
,属性,修改XMl
C#
读取
XML文件
并显示在DataGrid组件中
C#
读取
XML文件
并将其内容显示在DataGrid组件中。可以学习一下如何使用
C#
读取
XML中的
节点
数据,并将数据内容捆绑在DataGrid列表控件中,本例虽然简单,但在
C#
应用中是相当广泛的。
c#
读取
xml文件
增加结点删除
节点
并在listview中显示
xml文件
内容
c#
读取
xml文件
增加结点删除
节点
并在listview中显示
xml文件
内容
C#
读取
XML教程和例子(有代码)
使用
c#
读取
XML文件
,两种访问方式,一种是直接
读取
XML
节点
,一种是使用
C#
序列化方式将
XML文件
对象化
读取
C#
xml多个同名
节点
操作
方便对xml中任意节(多个同名
节点
)点属性进行获取、设置。 /// /// 设置指定
节点
的属性 /// /// xml结构 /// 父
节点
/// 父
节点
所处同名
节点
的位置 为0表明只有
一个
该
节点
/// 该父
节点
下的子
节点
/// 该父
节点
下的孙
节点
为空表示没有该
节点
/// 设置值 /// public bool SetNodeValueByIndex(XmlDocument xmlContent, string parentNode, int index,string sonNode,string grandSonNode, string valueStr)
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章