在课程源代码上修改既可。可以看到生成xml的流程:创建节点名(.createElement),传入节点值(.setTextContent),将子节点添加到根节点(.appendChild)。
/**
* 生成xml
*/
public void createXML() {
DocumentBuilder db = getDocumentBuilder();
Document document = db.newDocument();
document.setXmlStandalone(true);
Element bookstore = document.createElement("bookStore");
// 向bookstore根节点添加子节点book,第一本书
Element book = document.createElement("book");
Element name = document.createElement("name");
Element author = document.createElement("author");
Element year = document.createElement("year");
Element price = document.createElement("price");
name.setTextContent("冰与火之歌");
author.setTextContent("乔治马丁");
year.setTextContent("2014");
price.setTextContent("89");
book.appendChild(name);
book.appendChild(author);
book.appendChild(year);
book.appendChild(price);
book.setAttribute("id", "1");
// 将第一本书book节点加到bookstore根节点
bookstore.appendChild(book);
// 向bookstore根节点添加子节点book,第二本书
Element book1 = document.createElement("book");
Element name1 = document.createElement("name");
Element author1 = document.createElement("author");
Element year1 = document.createElement("year");
Element price1 = document.createElement("price");
Element language = document.createElement("language");
name1.setTextContent("安徒生童话");
author1.setTextContent("安徒生");
year1.setTextContent("2004");
price1.setTextContent("77");
language.setTextContent("English");
book1.appendChild(name1);
book1.appendChild(author1);
book1.appendChild(year1);
book1.appendChild(price1);
book1.appendChild(language);
book1.setAttribute("id", "2");
// 将第二本书book节点加到bookstore根节点
bookstore.appendChild(book1);
// 将bookstore节点(已包含book节点)添加到dom树中
document.appendChild(bookstore);
// 创建TransformerFactory对象
TransformerFactory tff = TransformerFactory.newInstance();
try {
// 创建Transformer对象
Transformer tf = tff.newTransformer();
tf.setOutputProperty(OutputKeys.INDENT, "yes");
tf.transform(new DOMSource(document), new StreamResult(new File("books1.xml")));
} catch (TransformerConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TransformerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦