1. ホーム
  2. c#

C#でHTMLをテキストに変換するには?

2023-12-09 06:39:20

質問

私は、HTML文書をプレーンテキストに変換するC#コードを探しています。

私は、単純なタグのストリッピングではなく、プレーンテキストを出力するものを探しています。 合理的な でプレーン テキストを出力するものを探しています。

出力はこのようになるはずです。

W3CのHtml2Txt

HTML Agility Packを見ましたが、私には必要なものではないと思います。どなたか、他にお勧めはありますか?

EDITです。 HTML Agility Packをダウンロードしたところ コードプレックス からダウンロードして、Html2Txt プロジェクトを実行しました。 なんということでしょう!(少なくともhtmlからtextへの変換を行うモジュールは)期待はずれでした。 タグを取り除き、テーブルを平らにするなどの処理だけでした。 出力は、Html2Txt @ W3Cが作成したものとは全く違っていた。 そのソースが利用できないようで残念です。 私は、より多くの "canned"ソリューションが利用可能であるかどうかを確認するために探していました。

EDIT 2: 皆様、ご指摘ありがとうございました。 フライスワット は、私が行きたい方向へ私を傾けてくれました。 私は System.Diagnostics.Process クラスを使って、lynx.exe を "-dump" スイッチで実行し、テキストを標準出力に送り、標準出力を ProcessStartInfo.UseShellExecute = falseProcessStartInfo.RedirectStandardOutput = true . これをすべてC#のクラスで包むことにします。 このコードはたまにしか呼ばれないので、新しいプロセスを生成することと、コードでそれを行うことはあまり関係がありません。 さらに、Lynxは速いです!

どのように解決するのですか?

あなたが探しているのは、Lynx や他のテキスト ブラウザのようにテキストを出力するテキスト モード DOM レンダラーです...これは、あなたが期待するよりもはるかに難しいことです。