我有一个需求,需要获取一个 XML ,将其元素转换为文档对象,然后获取已创建的元素值和属性。
以下是我尝试将字符串转换为 DOM 文档对象的代码片段。
String xmlString = " <r><e>d</e></r>";
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
org.w3c.dom.Document document = builder.parse(new InputSource(new StringReader(xmlString)));
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(document);
StreamResult result = new StreamResult(new StringWriter());
transformer.transform(source, result);
String str1 = result.getWriter().toString();
System.out.println(str1);
但这种情况仅适用于没有属性的元素。如果标签出现在带有属性的元素中,我们该怎么办?String xmlString = "<element attribname="value" attribname1="value1"> pcdata</element>"
我们正在使用双引号作为属性值"value"。编译器显示错误。
如果有任何可以处理这种情况的XML编码器和解码器,请提供建议。