解析XML 都进去看看
解析XML 都进来看看
我想获取一个节点里面的属性总数
例如:
<?xml version="1.0" encoding="utf-8"?>
<root name="中国" postcode="000000" >
<province name="请选择省" postcode="100000" >
<city name="请选择市" postcode="100100" >
<area name="请选择区" postcode="100101" />
</city>
</province>
</root>
我要获取 province 节点力的 属性总数。 要怎么获取 ?
------解决方案--------------------
Refer:
http://www.cnblogs.com/insus/p/3299052.html
------解决方案--------------------
node.Attributes.Count
------解决方案--------------------
XmlNode root = xmldoc.SelectSingleNode("NAME");//查找
XmlNodeList list = xmldoc.SelectSingleNode("NAMES").ChildNodes;
foreach (XmlNode xn in list)//遍历所有子节点
{
//将子节点类型转换为XmlElement类型
XmlElement xe = (XmlElement)xn;
}
逐级别遍历 或者直接使用递归遍历
------解决方案--------------------
查询xml文件中的节点信息
//设置相关查询信息控件
<asp:Label ID="Label2" runat="server" Text="搜索条件:" Font-Size="9pt"></asp:Label>
<asp:Label ID="Label3" runat="server" Text="请输入编号:"></asp:Label>
<asp:TextBox ID="TxtID" runat="server" Width="91px"></asp:TextBox>
<asp:Button ID="BtnSelect" runat="server" Font-Size="9pt" OnClick="BtnSelect_Click" Text="查询" Width="40px" />
<asp:RequiredFieldValidator ID="rfvSelect" runat="server" ErrorMessage="文本框不能为空" ControlToValidate="TxtID" Display="Dynamic" Font-Size="9pt"></asp:RequiredFieldValidator>
<asp:Label ID="Label1" runat="server" Text="请您输入要查询的条件" Width="185px"></asp:Label></span>
//查询事件遍历XML节点显示节点信息
protected void BtnSelect_Click(object sender, EventArgs e)
{
this.lblcondition.Text = "";//清空标签中的内容
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("LeaveWord.xml"));
XmlNodeList nodes;
XmlElement root = doc.DocumentElement;
nodes = root.SelectNodes("descendant::LW[ID='" + TxtID.Text.Trim() + "']");
foreach (XmlNode node in nodes)
{
if (lblcondition.Text == "")
{
for (int i = 0; i <= node.ChildNodes.Count - 1; i++)
{
lblcondition.Text = lblcondition.Text + node.ChildNodes[i].InnerText + "<br><br>";
//this.GridView1.Rows[i].Cells[i].Controls[0].ToString()=node.ChildNodes[i].InnerText;
}
}//CodeGo.net/
else
我想获取一个节点里面的属性总数
例如:
<?xml version="1.0" encoding="utf-8"?>
<root name="中国" postcode="000000" >
<province name="请选择省" postcode="100000" >
<city name="请选择市" postcode="100100" >
<area name="请选择区" postcode="100101" />
</city>
</province>
</root>
我要获取 province 节点力的 属性总数。 要怎么获取 ?
------解决方案--------------------
Refer:
http://www.cnblogs.com/insus/p/3299052.html
------解决方案--------------------
node.Attributes.Count
------解决方案--------------------
XmlNode root = xmldoc.SelectSingleNode("NAME");//查找
XmlNodeList list = xmldoc.SelectSingleNode("NAMES").ChildNodes;
foreach (XmlNode xn in list)//遍历所有子节点
{
//将子节点类型转换为XmlElement类型
XmlElement xe = (XmlElement)xn;
}
逐级别遍历 或者直接使用递归遍历
------解决方案--------------------
查询xml文件中的节点信息
//设置相关查询信息控件
<asp:Label ID="Label2" runat="server" Text="搜索条件:" Font-Size="9pt"></asp:Label>
<asp:Label ID="Label3" runat="server" Text="请输入编号:"></asp:Label>
<asp:TextBox ID="TxtID" runat="server" Width="91px"></asp:TextBox>
<asp:Button ID="BtnSelect" runat="server" Font-Size="9pt" OnClick="BtnSelect_Click" Text="查询" Width="40px" />
<asp:RequiredFieldValidator ID="rfvSelect" runat="server" ErrorMessage="文本框不能为空" ControlToValidate="TxtID" Display="Dynamic" Font-Size="9pt"></asp:RequiredFieldValidator>
<asp:Label ID="Label1" runat="server" Text="请您输入要查询的条件" Width="185px"></asp:Label></span>
//查询事件遍历XML节点显示节点信息
protected void BtnSelect_Click(object sender, EventArgs e)
{
this.lblcondition.Text = "";//清空标签中的内容
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("LeaveWord.xml"));
XmlNodeList nodes;
XmlElement root = doc.DocumentElement;
nodes = root.SelectNodes("descendant::LW[ID='" + TxtID.Text.Trim() + "']");
foreach (XmlNode node in nodes)
{
if (lblcondition.Text == "")
{
for (int i = 0; i <= node.ChildNodes.Count - 1; i++)
{
lblcondition.Text = lblcondition.Text + node.ChildNodes[i].InnerText + "<br><br>";
//this.GridView1.Rows[i].Cells[i].Controls[0].ToString()=node.ChildNodes[i].InnerText;
}
}//CodeGo.net/
else