как получить доступ к URI файла DTD на моем локальном компьютере?
Вопрос
у меня есть файл DTD, к которому я обращался по этой ссылке:
http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd
Теперь я хочу, чтобы у меня была возможность получить доступ к этому файлу на моем локальном компьютере без доступа к Интернету. Я использовал WebRequest для доступа к этому URI.
Может ли кто-нибудь из вас сказать мне, как получить к нему доступ с помощью словаря или любого другого класса на C#.
Спасибо..
Решение
Обычно это особенность вашего синтаксического анализатора XML.Найдите что-то под названием «обработчик объекта».При обнаружении объявления DOCTYPE этот обработчик вызывается для загрузки DTD.Он получит URL-адрес и некоторую другую информацию в качестве параметров.
[EDIT] Обработчик объекта вернет некий «поток», который будет читать синтаксический анализатор XML.Поэтому вам нужно сохранить DTD в файл, открыть файл в обработчике сущностей и вернуть результирующий поток в синтаксический анализатор XML.
В документации вашего XML-парсера должны быть примеры того, как это сделать.Обратите внимание, что поток должен быть где-то закрыт;обычно это делает синтаксический анализатор XML (поскольку только он знает, когда он закончил работу с потоком).