【发布时间】:2011-09-27 15:56:18
【问题描述】:
我在 C# 中使用 GetResponseStream() 检索了一个 HTML 页面。我需要一个来自该页面的确切值(int),每次运行程序时都会有所不同。尽管如此,HTML代码的结构是一样的,特别是:
(...)
<td colspan="2" class="txtnormal"><div align="right"> TAX:</div></td>
<td class="txtnormal"><div align="right"><strong>0.00</strong></div></td>
<td colspan="2"> </td>
(...)
和
(...)
<td colspan="2"><div align="right" class="txtnormal">Total:</div></td>
<td class="txtnormal"><div align="right"><strong>10.00</strong></div></td>
<td colspan="2"> </td>
(...)
请注意,代码在同一页面中重复(即:<td class="txtnormal"><div align="right"><strong>VALUE</strong></div></td>),但值的标题(TAX 和 Total)是唯一不同的东西(实际值可能相同)。
我想将 Total 值存储在一个变量中,即:10.0 在这种情况下。
我试过了:
int first = responseFromServer.IndexOf("<td class= \"txtnormal\"><div align=\"right\"><strong>") + "<td class=\"txtnormal\"><div align=\"right\"><strong>".Length;
int last = responseFromServer.LastIndexOf("</strong></div></td>");
string value = responseFromServer.Substring(first, last - first);
但是我得到了不好的结果,存储在 ALL 的 value 的 HTML 页面 直到 的值(是为了区别我´我在做)。
你知道我怎样才能得到确切的值,这是:我粘贴的文本之间的子字符串吗?
非常感谢。
【问题讨论】: