私は、次のHTMLを解析して問題を抱えている:HtmlAgilityPack:終了行を解析できません(エンドラインを無視します)
<tr>
<td><p><b>
<span>Company:</span></b>
<span>Test</span>
</p></td>
</tr>
<tr>
<td><p><b>
<span>Company:</span></b>
<span>Test 2</span>
</p></td>
</tr>
私のコードは次のとおりです。
HtmlDocument doc = new HtmlDocument();
doc.Load(@"email.txt");
Console.WriteLine(doc1.DocumentNode.InnerText);
私は次の出力を持っている:Company:TestCompany:Test 2
しかし、私が望む
Company: Test
Company: Test 2
したがって、問題は改行が解析されていないことです。
P.S .: doc.OptionWriteEmptyNodes = true;
は違いがありません。
更新:私は、何かHTMLがあれば、それは最終行を解析していないことを意味します。 <br />
タグなどがある場合でも
をあなたのhtmlには改行がありません使用します。ブラウザでも表示されない場合は、両方のラベルが並べて表示されます。あなたの実際の要件は何ですか? 'Document.InnerText'はすべてのテキストコントロールの値を並べて返します。必要がない場合は、必要なもの(すべてのスパン)を選択してから、 'String.Join(Environment.NewLine、allInnerText)'を使用する必要があります。 –
@TimSchmelter、InnerTextをブラウザからコピーしたような文字列を取得したい。 したがって、改行がある場合、それらもinnertext(\ n)にあるはずです。 –