Я пишу инструмент плагина eclipse, который исправит проблему атрибута html. В коде пользовательского интерфейса используется весна и несколько других фреймворков. Когда я разбираю и записываю файл, эти теги не записываются должным образом. У меня также есть тег <script>
; который не имеет значения, как ожидалось. Я хочу «< #», «< @» быть нетронутым или написано правильно. пожалуйста помоги.Пропуск/Разбор специальных тегов
Входной код ----------
<#macro contentcol>
<p data-taganalytics="trackSection" data-taglocation="AddABankAccount">
<a href="#" id="faq" class="btnSmall jq-modal" role="button" rel="<@spring.message "linkaccount.addaccount.faq.questionid" />">
<@spring.message "linkaccount.addaccount.faq.text" />
</a>
</p>
<#if (spring.status?? && spring.status.errorMessages?exists && spring.status.errorMessages?is_sequence && spring.status.errorMessages?size > 0) >
<@tom.message style="error">
<p>
<strong>
<#list spring.status.errorMessages as error>
<li>${error}</li>
</#list>
</strong>
</p>
</@tom.message>
</#if>
Код выхода ----------
<html><head></head><body><#macro contentcol>
<p data-taganalytics="trackSection" data-taglocation="AddABankAccount">
<a href="#" id="faq" class="btnSmall jq-modal" role="button" rel="<@spring.message " linkaccount.addaccount.faq.questionid"=""></a>">
<@spring.message "linkaccount.addaccount.faq.text" />
</p>
<#if (spring.status?? && spring.status.errorMessages?exists && spring.status.errorMessages?is_sequence && spring.status.errorMessages?size > 0) >
<@tom.message style="error">
<p>
<strong>
<#list spring.status.errorMessages as error>
</strong></p><li><strong>${error}</strong></li><strong>
<!--#list-->
</strong>
<p></p>
<[email protected]>
<!--#if-->
Это мой Parser Read Код:
htmlFile = DocumentUtil.fixCompliance(Jsoup.parse(in, "ISO-8859-1"));
Это мой Написать код:
Document.OutputSettings settings = document.outputSettings();
settings.prettyPrint(false);
settings.escapeMode(Entities.EscapeMode.base);
settings.charset("ASCII")
System.out.println(document.html().toString());
writer = new PrintWriter(in, "ASCII");
writer.write(document.html());
writer.flush();
writer.close();
Пробовал как UTF-8 и ASCII
Я думаю Jsoup не предназначен для этого. Конечно, вы можете попробовать настроить whiltlist (http://jsoup.org/apidocs/org/jsoup/safety/Whitelist.html) для синтаксического анализа, но в основном Jsoup предназначен для анализа html, который готов к визуализации, а не шаблоны с дополнениями исходного кода. – luksch