Dom4j 保存XML HL7-V3

简介: Dom4j 保存XML HL7-V3

dom4j selectNodes 取不到值 因为XML带有命名空间 HL7

Dom4j 保存XML

String xmlPath = "D:\\BS004.xml";
String savePath = "D:\\BS004_save.xml";
SAXReader reader = new SAXReader();
Document doc = reader.read(xmlPath);
//添加命名空间
Map<String, String> xmlMap = new HashMap<>();
xmlMap.put("s", "urn:hl7-org:v3");
//作用域在文档上,方便多次 select Node
reader.getDocumentFactory().setXPathNamespaceURIs(xmlMap);
//消息创建时间
Node creationTimeNode = doc.selectSingleNode("/s:POOR_IN200901UV/s:creationTime/@value");
creationTimeNode.setText(DateUtil.format(new Date(), "yyyyMMddHHmmss")); 
 
Element locationNode = (Element) doc.selectSingleNode("/s:POOR_IN200901UV/s:controlActProcess/s:subject/s:placerGroup/s:componentOf1/s:encounter/s:location");
Document ss = DocumentHelper.parseText(locationNode.asXML());
locationNode.addText("转成 Element 对象,进行操作");
OutputFormat outputFormat = OutputFormat.createPrettyPrint();
outputFormat.setEncoding("UTF-8");
XMLWriter writer = null;
try {
    writer = new XMLWriter(new FileWriter(savePath), outputFormat);
    writer.write(doc);
    writer.flush();
    writer.close();
} catch (Exception e) {
    e.printStackTrace();
}

 

目录
相关文章
|
4月前
|
XML JavaScript Java
【JAVA XML 探秘】DOM、SAX、StAX:揭秘 Java 中 XML 解析技术的终极指南!
【8月更文挑战第25天】本文详细探讨了Java中三种主流的XML解析技术:DOM、SAX与StAX。DOM将XML文档转换为树状结构,便于全方位访问和修改;SAX采取事件驱动模式,适用于大型文件的顺序处理;StAX则兼具DOM和SAX的优点,支持流式处理和随机访问。文中提供了每种技术的示例代码,帮助读者理解如何在实际项目中应用这些解析方法。
212 1
|
5月前
|
XML JavaScript 数据格式
XML DOM 浏览器差异
所有 modern browsers 支持 W3C DOM 规范, 但仍存在差异, 主要是处理空白和换行的不同。例如, 在 XML 中, Internet Explorer 不会将空白或换行视为文本节点, 而其他浏览器则会。这会导致相同的 XML 文档在 IE 中的子节点数为 4, 而在其他浏览器中为 9:
|
5月前
|
XML JavaScript 数据格式
XML DOM 浏览器差异
所有 modern browsers 支持 W3C DOM, 但在处理空白和换行上存在差异。例如, 使用记事本编辑的 XML 可能包含 CR/LF 和额外空格。IE 不将空白视作文本节点, 与其他浏览器不同。
|
5月前
|
XML JavaScript 数据格式
XML DOM 浏览器差异
所有 modern browsers 支持 W3C DOM, 但在处理空白和换行上存在差异。例如, 使用记事本编辑的 XML 可能包含 CR/LF 和额外空格。IE 不将空白视作文本节点, 而其他浏览器则会。这会导致对相同 XML 文档的 `childNodes` 长度计算不同: IE 显示 4 个子节点, 其他浏览器显示 9 个。
|
5月前
|
XML Web App开发 JavaScript
XML DOM 解析器
Most browsers have a built-in XML parser that converts XML into a JavaScript accessible object (XML DOM).
|
5月前
|
XML 存储 JavaScript
XML DOM - 访问节点
通过 DOM, 可全面访问 XML 文档的节点。实现这一目标有 3 种方法: 1. 使用 `getElementsByTagName()` 方法, 2. 遍历节点树, 3. 利用节点间的关联进行导航。 `getElementsByTagName()` 返回一个 Node List, 即节点数组。
|
5月前
|
XML JavaScript 数据格式
XML DOM 浏览器差异
输出子节点的数量。结果取决于您所使用的浏览器。IE 浏览器会输出 4(提醒 4 个子节点),而其他浏览器会输出 9(提醒 9 个子节点)。
|
5月前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
遍历(Traverse)意味着在节点树中进行循环或移动。
|
5月前
|
XML Web App开发 JavaScript
XML DOM 解析器
解析器把 XML 转换为 JavaScript 可存取的对象(XML DOM)。
|
5月前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
遍历(Traverse)意味着在节点树中进行循环或移动。