XML文件如下
- <TABLE width="90%" border="1" align="center" cellpadding="3" cellspacing="0" bordercolorlight="#999999" bordercolordark="#ffffff">
- <TBODY>
- <TR class="bor_4">
<td width="17%" height="22" align="right" valign="middle" nowrap="" class="title2">发布时间:</td>
<td colspan="3" CLASS="h12">2010-02-23 22:40</td>
</TR>
- <TR>
<TD align="right" class="title2">路线编号:</TD>
<TD colspan="3" CLASS="h12">G020</TD>
</TR>
- <TR>
<TD align="right" class="title2">受阻路段:</TD>
<TD colspan="3" CLASS="h12">京沪高速</TD>
</TR>
- <TR>
<TD align="right" class="title2">阻断时间:</TD>
<TD CLASS="h12">2010-02-23 22:03</TD>
<TD align="right" class="title2">预计恢复时间:</TD>
<TD CLASS="h12">2010-02-24 12:00</TD>
</TR>
</TBODY>
</TABLE>
我要取得每个TD的值,该怎么取得?
先用 XmlNodeList xmlNodeList = xmlDoc.DocumentElement.GetElementsByTagName("TABLE");
取得Table标记符
后面要定位到TR。然后再是每个TR里的TD
这个怎么定位的?
- <TABLE width="90%" border="1" align="center" cellpadding="3" cellspacing="0" bordercolorlight="#999999" bordercolordark="#ffffff">
- <TBODY>
- <TR class="bor_4">
<td width="17%" height="22" align="right" valign="middle" nowrap="" class="title2">发布时间:</td>
<td colspan="3" CLASS="h12">2010-02-23 22:40</td>
</TR>
- <TR>
<TD align="right" class="title2">路线编号:</TD>
<TD colspan="3" CLASS="h12">G020</TD>
</TR>
- <TR>
<TD align="right" class="title2">受阻路段:</TD>
<TD colspan="3" CLASS="h12">京沪高速</TD>
</TR>
- <TR>
<TD align="right" class="title2">阻断时间:</TD>
<TD CLASS="h12">2010-02-23 22:03</TD>
<TD align="right" class="title2">预计恢复时间:</TD>
<TD CLASS="h12">2010-02-24 12:00</TD>
</TR>
</TBODY>
</TABLE>
我要取得每个TD的值,该怎么取得?
先用 XmlNodeList xmlNodeList = xmlDoc.DocumentElement.GetElementsByTagName("TABLE");
取得Table标记符
后面要定位到TR。然后再是每个TR里的TD
这个怎么定位的?
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load("1.xml");
XmlNodeList nodelist;
XmlElement root = xmlDocument.DocumentElement;
nodelist = root.GetElementsByTagName("TD");
for (int i = 0; i < nodelist.Count; i++)
{
if (nodelist.Count.ToString() != null)
{
str += nodelist.Item(i).InnerText;
}
}
xml.Load(Path.Combine(Application.StartupPath, "xxx.xml"));
XmlNodeList xn = xml.SelectNodes("TABLE/TBODY/TR");
DataTable xmltable = new DataTable();
//定义表标题
foreach (XmlNode x in xn)
{
foreach (XmlNode xx in x.ChildNodes)
{
DataColumn col = new DataColumn(xx.Name.ToString()+(new Random()).Next(1,1000));
xmltable.Columns.Add(col);
}
break;
}
foreach (XmlNode x in xn)
{
DataRow dr = xmltable.NewRow();
for (int i = 0; i < x.ChildNodes.Count; i++)
{
XmlNode xx = x.SelectSingleNode(xmltable.Columns.ToString());
dr = xx.InnerText;
}
xmltable.Rows.Add(dr);
}
//得到对应节点
dataGridView1.DataSource = xmltable;