我想清理 JAVA 中 XML 的 header ,例如:
<?xml version="1.0" encoding="utf-8"?>
<Document xmlns="xxxx" xmlns:xsi="yyyy" xsi:schemaLocation="zzzz">
...
至
<?xml version="1.0" encoding="utf-8"?>
<Document>
...
我有一个带有 xml 的 documentBuilder
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
org.w3c.dom.Document document = builder.parse(new InputSource(new StringReader(strXmlContent)));
现在我不知道该怎么办,有什么帮助吗?
最佳答案
试试这个:
NodeList nodes = document.getChildNodes();
for (int i = 0; i < nodes.getLength(); i++) {
String id = nodes.item(i).getNodeValue();
Element el = ((Attr) nodes.item(i)).getOwnerElement();
el.removeAttribute(id);
}
打印回来:
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty( OutputKeys.INDENT, "yes" );
StreamResult result = new StreamResult( new StringWriter() );
DOMSource source = new DOMSource( document );
transformer.transform( source, result );
String xmlString = result.getWriter().toString();
System.out.println( xmlString );
关于java - 如何在 java 中清理 XML 的 header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35451913/