我正在尝试将org.w3c.dom.Document
写入文件。我从
Document
String URL = "http://...."
DOMParser parser = new DOMParser();
Document doc = null;
try {
parser.parse(new InputSource(URL));
doc = parser.getDocument();
} catch () {}
然后我使用
将此Document
写入文件
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File(file));
transformer.transform(source, result);
执行此操作时,我不断收到以下错误
ERROR: 'Namespace for prefix 'xlink' has not been declared.'
可能有什么问题?感谢
答案 0 :(得分:1)
我建议使用不同的库,例如Dom4J,而不是试图通过Java中的内置XML API。 Dom4J设计得更好,使您的代码更具可读性:
Document doc = new SAXReader().read(inputStream);
new XMLWriter(outputStream).write(doc);
这一切都没有FactoryFactoryFactoryFactories
。
我知道这并没有直接回答你的问题,但希望无论如何都会有所帮助。 Dom4j知道如何与Java XML API交谈,以便您可以根据自己的需要进行混合和匹配。如果你想使用XSLT,你甚至可以将它插入Xalan或类似的东西。