社区
C#
帖子详情
在xml中,如何获取当前节点下的某个子节点(已知节点名)?
guanxg
2006-10-30 10:53:34
在载入一个xml文件后,我已经定位到某个节点,现在我需要获取当前节点下的某个子节点,该子节点的名字已知。如果通过相对路径定位到它呢?问题是,无法知道父结点的路径。
...全文
802
13
打赏
收藏
在xml中,如何获取当前节点下的某个子节点(已知节点名)?
在载入一个xml文件后,我已经定位到某个节点,现在我需要获取当前节点下的某个子节点,该子节点的名字已知。如果通过相对路径定位到它呢?问题是,无法知道父结点的路径。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
guanxg
2006-11-01
打赏
举报
回复
多谢各位了。我找到原因,需要定一个一个名字空间管理类,就是XmlNamespaceManager,然后才能用路径来定位。
liujia_0421
2006-10-30
打赏
举报
回复
给楼主一篇文章参考一下吧,我觉得里面讲得很清楚了:
http://blog.5d.cn/user6/crl/200510/175989.html
有例子...
yuqi508
2006-10-30
打赏
举报
回复
以下参考
private TPFMConfig GetNextConfig()
{
string Ext = "";
string Location = "";
string Subdirectory = "";
string FUnit = "";
string Remove = "";
string Handler = "";
string Destination = "";
string Dir = "";
string ConnectionSting = "";
while (xmlreader.Read())
{
if (xmlreader.NodeType == XmlNodeType.Element)
{
while (xmlreader.Read())
{
if (xmlreader.NodeType == XmlNodeType.Element)
{
if (xmlreader.Name == "EXT")
{
Ext = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "LOCATION")
{
Location = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "SUBDIRECTORY")
{
Subdirectory = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "UNIT")
{
FUnit = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "REMOVE")
{
Remove = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "HANDLER")
{
Handler = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "DESTINATION")
{
Destination = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "DIR")
{
Dir = xmlreader.ReadElementString();
continue;
}
if (xmlreader.Name == "CONNECTIONSTRING")
{
ConnectionSting = xmlreader.ReadElementString();
break;
}
}
}
return new TPFMConfig(Ext, Location, Subdirectory, FUnit, Remove, Handler, Destination, Dir, ConnectionSting);
}
}
return null;
}
supesa
2006-10-30
打赏
举报
回复
建议你看下xmlpath定义
你说的应该可以用
CS3000GR:dataBind[@bindingType="individual"]
做xmlpath来查找
我写的可能不对,好久没写了,都忘了
你看下vs自带的msdn,上边有很规范的讲解的
lovefootball
2006-10-30
打赏
举报
回复
假定node就是ellipse
XmlNode temp = node.SelectSingleNode("CS3000GR:dataBind");
刚才测试了一下
节点名称里面可以带冒号么??
Almzg_0
2006-10-30
打赏
举报
回复
那就是说:CS3000GR:dataBind也是某个节点的值?那这里某个节点你知道么?
guanxg
2006-10-30
打赏
举报
回复
Almzg_0(阿拉麻兹固) ,我知道直接定位某个节点是可以的。但是我碰到的问题是。我需要根据某个子节点的值去找它的兄弟,因为他们之间有些值有联系。
guanxg
2006-10-30
打赏
举报
回复
<ellipse>
<title>"Body"</title>
<CS3000GR:general tagObject="no" debug="yes"/>
<CS3000GR:dataBind bindingType="individual">
<CS3000GR:bindingSet SetNo="1">
<CS3000GR:binding genericName="$TAG" value="RL70519"/>
</CS3000GR:bindingSet>
</CS3000GR:dataBind>
</ellipse>
比如我已经定位到<ellipse>节点了,我如何定位到<CS3000GR:dataBind>这个子节点呢?
Almzg_0
2006-10-30
打赏
举报
回复
<ParserDevType>
<Type name="2000">
<ShowName>2000</ShowName>
<DllPath></DllPath>
</Type>
</ParserDevType>
=======================
XmlNodeList mXmlNodeList = section.SelectNodes("Type");
foreach(XmlNode mXmlNode in mXmlNodeList)
{
mEPDevType = new EPDevType();
mEPDevType.DllPath = mXmlNode.SelectSingleNode("DllPath").InnerText;
mEPDevType.ShowName = mXmlNode.SelectSingleNode("ShowName").InnerText;
if (mXmlNode.Attributes.Count > 0)
{
mEPDevType.DevTypeName = mXmlNode.Attributes[0].InnerText;
mDictionary.Add(mEPDevType.DevTypeName, mEPDevType);
}
}
====================
部分代码,将就着看下
jc15271149
2006-10-30
打赏
举报
回复
childnode
guanxg
2006-10-30
打赏
举报
回复
我已经已经得到父节点了,而且子节点就在父结点的下一级
Almzg_0
2006-10-30
打赏
举报
回复
例子?
Almzg_0
2006-10-30
打赏
举报
回复
无法知道父节点?那怎么找子节点?
ztree 3.5.16
最新版的ztree3.5.16,功能很强大,示例很全
python提取
xml
某个
节点
中
的内容_读取
XML
文件内的某个
节点
的值
已知
有一个本地的
xml
文件(D:\location.
xml
)如下:034.777046099314113.67314082709180商务大厦这是一个显示地理位置的坐标信息,此
xml
文档要求
获取
节点
下的值,lat以及lng,就是经纬度。好长时间没有练习过
xml
,对
xml
也生疏了好多。上百度找了些
xml
知识,下面就这个例子讲讲我是怎么一步一步实现
获取
到的(包含):首先,实例化
xml
,
获取
xml
文件的...
xml
中
定位到任一
节点
程序
中
如用到
xml
,一般很需要根据某一条件定位到
xml
的某一
节点
Xml
Document
xml
= new
Xml
Document()经常会用到
xml
.SelectSingleNode(xpath)方法其
中
关键就是xpath即
xml
节点
的路径的写法,只要xpath写的正确,就可以轻松定位到需要的
节点
常用的运算符和特殊字符为:/ 子运算符,即下一级// 任意深度的元素,如果写在开头,则从根
节点
递归向下[] 匹配符,就是匹配某一元素条件的@ 属性
名
的前缀下面一个例子演示用法(假设
xml
层级很多,无法确定为几
java 通过某一
节点
获取
父
节点
以及
子
节点
信息
最近要实现一个查看历史记录的功能。 在网上查了很多资料。 都是通过某一
节点
获取
父
节点
或者
获取
子
节点
信息。 没有看到通过某一
节点
获取
子
节点
以及父
节点
的所有信息。 很苦恼。 之后在一篇博客上看到通过某一
节点
获取
父
节点
信息的一条sql语句之后在上面略作修改。 把
子
节点
的也全部
获取
下来了。 下面我会三种情况的实现sql做个记录。 以免以后忘记。希望这个记录对其他码友有些帮助。 以下是我的表结构: ...
java判断
xml
子
节点
是否存在_Java解析
Xml
文件—判断
Xml
文件的
节点
是否存在
子
节点
_以及对
节点
下不同
子
节点
的内容解析方式...
>判断
Xml
文件
中
某一个
节点
是否存在
子
节点
:首先要
获取
到
节点
的document,Element root = document.getRootElement();Element HotelGeoList = root.element("HotelGeoList");for(Iterator iteratorHotelGeo = HotelGeoList.elementIterator("Ho...
C#
111,094
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章