c# - 如何在 C# 中读取另一个 xml 标签内的标签?
问题描述
如何读取另一个 xml 标签内的标签?
例子:
<site id = "1" clas = "black"><test> Value </test></site>
我想阅读里面的测试标签<site>
。我想归还里面的东西。
我的代码:
XmlReader xmlReader = XmlReader.Create("site.xml");
while (xmlReader.Read())
{
if ((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "site"))
{
if (xmlReader.HasAttributes)
{
string test = xmlReader.GetAttribute("id");
Console.WriteLine(test);
}
}
}
解决方案
you can use
XMLNodeList
like below
var doc = new XmlDocument();
doc.Load(sites.xml);
XmlDocument xml = new XmlDocument();
xml.LoadXml(doc.DocumentElement.OuterXml.ToString());
XmlNodeList xnList = xml.SelectNodes("/site/test");
foreach (XmlNode xn in xnList)
{
if (xn["name"].InnerText == "test")
{
string testvalue = xn["test"].InnerText;
}
}
推荐阅读
- java - Java 输入缓冲区和 do-while 循环行为(为什么它检查第一个字符 3 次?)
- excel - 优化后VBA Loop仍然运行缓慢
- magento2 - Magento 2 管理表单显示空白页
- amazon-web-services - 在两个项目之间共享 AWS Cognito / Amplify Auth 配置?
- powerbi - 非空白列的百分比
- python - Python:运行实时跟踪的 GUI
- c# - C# 选择带有名称的属性
- c# - Ionic 4 + Net Core 2.3 路由 API 调用
- python-3.x - 机器人两次执行相同的命令
- c++ - 从用户那里获取输入