当行数不可预测时,如何对特定表的特定列中的值求和?请注意,标题行包含文本并使用“”而不是“”。
使用下面的示例 html,我想对第一个表的第四列的值求和,并忽略所有其他表。
我假设第一步是获取第一个表中的行数,下一步是构建一个忽略第一行执行求和的计算。
示例 HTML;
<html>
<head>
<title>Tables</title>
</head>
<body>
<table border="1">
<tr>
<td>Name</td>
<td>Phone</td>
<td>City</td>
<td>Number</td>
</tr>
<tr>
<td>Scott</td>
<td>555-2345</td>
<td>Chicago</td>
<td>42</td>
</tr>
<tr>
<td>Bill</td>
<td>555-1243</td>
<td>Detroit</td>
<td>23</td>
</tr>
<tr>
<td>Ted</td>
<td>555-3567</td>
<td>Columbus</td>
<td>9</td>
</tr>
</table>
<p></p>
<table border="1">
<tr>
<td>Name</td>
<td>Year</td>
</tr>
<tr>
<td>Abraham</td>
<td>1865</td>
</tr>
<tr>
<td>Martin</td>
<td>1968</td>
</tr>
<tr>
<td>John</td>
<td>1963</td>
</tr>
</table>
<p></p>
</body>
</html>
这里参考了我用于其他目的的代码 - (获取表数)。
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
String html = "C:/TestFile.html";
HtmlDocument doc = new HtmlDocument();
doc.Load(html);
int count = doc.DocumentNode.SelectNodes("//table").Count;
// output to Console
Console.WriteLine(count.ToString());
Console.ReadLine();
}
}
}
谢谢!
还有一件事...您是否可以建议一些资源来帮助我理解语法,以便我获得一点独立性。(我是 HTML-Agility Pack 的新手,几年前我使用过 C#)
我有 HAP 1.4.6 的 CHM 文件,我尝试在 Visual Studio 的对象浏览器中导航 HtmlAgilityPack,但我不明白我在那里看到的内容。请指导我一些可以帮助我入门的资源。我将不胜感激对我正在尝试做的事情有更多的线索。
也谢谢你!