Используя метод text-commons org.apache.commons.text.StringEscapeUtils
class escapeXml10
, мы можем избежать кодов ссылок на символы в тегах xml -
StringEscapeUtils.escapeXml10(element.getValue())
Полный пример показан ниже
public static void toXSD() {
SAXBuilder saxBuilder = new SAXBuilder();
Document document;
try {
document = saxBuilder.build(new File("D:\\Users\\schintha\\Desktop\\Work\\\test_files\\SUMMARY_11.xml"));
for (Element element : document.getRootElement().getChildren()) {
System.out.println("Name = " + element.getName());
System.out.println("Value = " + StringEscapeUtils.escapeXml10(element.getValue()));
}
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();}}
Тот же самый входной файл, который использовался в вопросе:
<?xml version="1.0" encoding="UTF-8"?>
<temp>
<position><</position>
</temp>
получил ожидаемый результат (значение тега позиции без разбора)
Name = position
Value = <