您的位置:首页 > 其它

一个简单方法:构造xml的document,并将其转换为string

2015-03-13 16:01 441 查看

    首先,构造一个document对象:

Document doc = null;
try {
doc = DocumentBuilderFactory.newInstance()
.newDocumentBuilder().newDocument();
} catch (ParserConfigurationException e) {
e.printStackTrace();
return null;
}
    然后,在doc中加入需要的节点,例如:
Element register = doc.createElement("Register");
register.setAttribute("id", REGISTER_ATTRIB_ID);
register.setAttribute("type", REGISTER_ATTRIB_TYPE);
doc.appendChild(register);

Element params = doc.createElement("Params");
register.appendChild(params);

        Element item = doc.createElement(tagName);
        item.appendChild(doc.createTextNode(textNode));
        params.appendChild(item);
    最后,将document对象转换成字符串:
public static String convertDocToString(Document doc, String propertyName, String progertyValue){
Transformer transformer = null;
try {
transformer = TransformerFactory.newInstance().newTransformer();
} catch (TransformerConfigurationException e) {
e.printStackTrace();
return null;
} catch (TransformerFactoryConfigurationError e) {
e.printStackTrace();
return null;
}
transformer.setOutputProperty(propertyName, progertyValue);
DOMSource domSource = new DOMSource(doc);
StreamResult streamResult = new StreamResult();

ByteArrayOutputStream os = new ByteArrayOutputStream();
streamResult.setOutputStream(os);
try {
transformer.transform(domSource, streamResult);
} catch (TransformerException e) {
e.printStackTrace();
return null;
} finally {
try {
os.flush();
os.close();
} catch (Exception e2) {
e2.printStackTrace();
}
}

return os.toString();
}







内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: