0

私はこのリンクからアクセスしていたDTDファイルを持っています:

http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd

今、Web アクセスなしでローカル マシン上のこのファイルにアクセスできるようにしたいと考えています。WebRequest を使用してこの URI にアクセスしていました。

Dictionary または C# の他のクラスを使用してアクセスする方法を教えてください。

ありがとう..

4

1 に答える 1

0

これは通常、XML パーサーの機能です。「エンティティ ハンドラー」と呼ばれるものを検索します。DOCTYPE 宣言が見つかると、このハンドラーが呼び出されて DTD がロードされます。URL とその他の情報をパラメーターとして取得します。

[編集] エンティティ ハンドラーは、XML パーサーが読み取るある種の「ストリーム」を返します。したがって、DTD をファイルに保存し、エンティティ ハンドラーでファイルを開き、結果のストリームを XML パーサーに返す必要があります。

XML パーサーのドキュメントに、これを行う方法の例があるはずです。ストリームはどこかで閉じなければならないことに注意してください。通常は、XML パーサーがそれを行います (ストリームの処理がいつ完了したかを知っているのは XML パーサーだけだからです)。

于 2009-05-14T07:16:11.020 に答える