在HtmlAgilityPack中,我想创建 HtmlTextNode
,这是一个 HtmlNode
(来自HtmlNode的inherts),它有一个自定义的InnerText .
HtmlTextNode CreateHtmlTextNode(string name, string text)
{
HtmlDocument doc = new HtmlDocument();
HtmlTextNode textNode = doc.CreateTextNode(text);
textNode.Name = name;
return textNode;
}
问题是 textNode.OuterHtml
和 textNode.InnerHtml
在上述方法之后将等于"text" .
例如 CreateHtmlTextNode("title", "blabla")
将生成: textNode.OuterHtml = "blabla"
而不是 <Title>blabla</Title>
有没有更好的方法来创建 HtmlTextNode
?
2 回答
HTMLTextNode
只包含文本,没有标签 .它如下所示:
您正在寻找标准的HtmlNode .
请务必在您要添加的文本上调用
HtmlDocument.HtmlEncode()
. 这可确保正确编码特殊字符 .以下行创建带有内容的外部html
希望能帮助到你 .