【发布时间】:2020-11-17 14:43:16
【问题描述】:
我正在尝试执行数据迁移练习,将一系列 XML 文件加载为新格式。我发现的问题是遗留应用程序的 XML 是使用无效标签生成的,即一些标签包含空格,例如:
<Serial>0001</Serial>
<Document ID>12345</Document ID>
<Document Type>TypeA</Document Type>
不幸的是,遗留系统中没有人员资源来纠正 XML,所以我唯一的选择是在处理数据时修复它。
谁能提供一种使用 Java 8 的巧妙方法来删除 XML 标记中的空格,使其有效解析?
我提取 XML 的原始代码是
final XmlMapper xmlMapper = new XmlMapper();
final JsonNode jsonNode = xmlMapper.readTree(metadata);
return objectMapper.convertValue(jsonNode, new TypeReference<Map<String, String>>()
非常感谢
【问题讨论】:
-
值得看看 TagSoup 或 validator.nu 等实用程序如何使用它;他们有时可以很好地修复错误的 XML,有时则不行。