private void button1_Click(object sender, EventArgs e)
{
string xml = @"<root>
<row><id>1</id><name>项目1</name></row>
<row><id>2</id><name>项目2</name></row>
<row><id>3</id><name>项目3</name></row>
<row><id>4</id><name>项目4</name></row>
</root>";
// 找出 ID = 2 的项目名
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
string xpath = "//row[id=2]/name"; //两个斜杠表示不在乎具体层级
XmlNode node = doc.SelectSingleNode(xpath);
if (node != null)
{
MessageBox.Show(node.InnerText);
}
}
private void button2_Click(object sender, EventArgs e)
{
string xml = "<员工基本信息><姓名>张三</姓名><性别>男</性别><年龄>22岁</年龄></员工基本信息>";
// 解析年龄
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
string xpath = "/员工基本信息/年龄";
XmlNode node = doc.SelectSingleNode(xpath);
if (node != null)
{
MessageBox.Show(node.InnerText);
}
}
private void button3_Click(object sender, EventArgs e)
{
string xml = @"<root>
<row id=""1""><name>项目1</name></row>
<row id=""2""><name>项目2</name></row>
<row id=""3""><name>项目3</name></row>
</root>";
// 找出 row id = 2对应的name
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
string xpath = "//row[@id=2]/name";
XmlNode node = doc.SelectSingleNode(xpath);
if (node != null)
{
MessageBox.Show(node.InnerText);
}
}
private void button4_Click(object sender, EventArgs e)
{
string xml = @"<root>
<row id=""1""><name pm=""汤姆"">项目1</name></row>
<row id=""2""><name pm=""杰瑞"">项目2</name></row>
<row id=""3""><name pm=""薇薇安"">项目3</name></row>
</root>";
// 找出 row id = 2对应的pm
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
string xpath = "//row[@id=2]/name";
XmlNode node = doc.SelectSingleNode(xpath);
if (node != null)
{
if (node.Attributes["pm"] != null)
MessageBox.Show(node.Attributes["pm"].Value.ToString());
else
MessageBox.Show("未找到PM属性。");
}
}