考虑以下 HTML 片段(_
用于空格):
<head>
...
<link ... ___/>
<!-- ... -->
...
</head>
我正在使用 Html Agility Pack (HAP) 来读取 HTML 文件/片段并去除链接。我想要做的是找到LINK
(和其他一些)元素,然后用空格替换它们,如下所示:
<head>
...
____________
<!-- ... -->
...
</head>
到目前为止,解析部分似乎正在工作,我得到了我正在寻找的节点。但是,HAP 会尝试修复 HTML 内容,而我需要所有内容完全相同,除了我正在尝试进行的更改。另外,在回写之前读入的内容时,HAP 似乎有很多错误,所以我想采取的方法是让 HAP 解析输入,然后我回到原始输入并替换我的内容不想要。
问题是,HtmlNode
似乎没有输入长度属性。它StreamPosition
似乎表明在输入中开始读取节点内容的位置,但我找不到可以告诉我构建节点消耗了多少字符的长度属性。
我尝试使用该OuterHtml
属性,但不幸的是,HAP 尝试LINK
通过删除该___/
部分来修复该属性(LINK
不应该关闭一个元素)。因此,OuterHtml.Length
返回错误的长度。
HAP 有没有办法获取这些信息?