Как заставить HtmlAgilityPack перестать автоматически удалять косые черты тегов Singleton в html-файле? - PullRequest
0 голосов
/ 03 июня 2019

Я делаю инструмент для перевода строки для файла .epub. Я попытался использовать HtmlAgilityPack в качестве решения для обработки файла XHTML, распакованного из файла epub.

Вот проблема в том, что HtmlAgilityPack автоматически удаляет косую черту из тега без конечного тега.

Я пытался провести какое-то исследование, но не настолько, чтобы помочь мне решить проблему.

Например: Первоначально он был с косой чертой в конце.

<link href="style.css" rel="stylesheet" type="text/css" />

Но так как он загружен в HtmlAgilityPack, слеш автоматически удален.

<link href="style.css" rel="stylesheet" type="text/css">

Я знаю, что обе ситуации действительны на обычных HTML-страницах, но в формате epub, похоже, не одинаковы. EPUBcheck всегда показывает мне, что фатальный слеш удаляется. И это даже невозможно прочитать, если я просто проигнорирую предупреждение.

У меня есть часы, чтобы решить проблему, Кто-нибудь может мне помочь?

Спасибо.

1 Ответ

0 голосов
/ 07 июня 2019

Установите для свойства OptionWriteEmptyNodes значение true в вашем HtmlDocument.

string htmltext =File.ReadAllText("test.html");

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

doc.LoadHtml(htmltext);

См. Это https://html -agility-pack.net / Knowledge-Base / 11047739 / optionwriteemptynodes-break-xml-декларация-при-htmlagilitypack

...