HtmlAgilityPackファイルの読み込み

c# html-agility-pack

質問

ファイルシステムからファイルをロードしようとすると、問題が発生します。いくつかのHTMLコントロールの値では、スパン値の中に "<"記号が付いていません。

HtmlDocument doc = new HtmlDocument();
doc.OptionReadEncoding = true;

//StreamReader str = new StreamReader(fileName, Encoding.UTF8);
StreamReader str = new StreamReader(@"E:\HTMLS\OEL\1030,1.html",Encoding.UTF8,true);

doc.Load(str.BaseStream, Encoding.ASCII);
//string streamString = str.ReadToEnd().
str.Close();
//all nodes

doc.DocumentNode.Descendants().Where(x => x.Name == "#text" && (x.InnerText == "\r\n\t" || x.InnerText == "\r\n" || x.InnerText == "\r\n\t\t")).ToList().ForEach(x => x.Remove());
List<HtmlNode> listHtmlNode = doc.DocumentNode.Descendants("table").ToList();

人気のある回答

<あなたのHTMLのコンテンツとして<ような記号は使用しないでください。それらをあなたのhtmlに置くとhtmlが無効になり、HTMLAgilityパックが正しく実行されなくなります。

あなたのhtmlでそれらを必要とする場合は、それらをエンコードする必要があります。 <%lt;ここをクリックhttp://www.w3schools.com/html/html_entities.asp




ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ