JavaWeb学习笔记-XML-6

8 篇文章 0 订阅

dom4j

//获取第二本书的书名与属性
public void read(){
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File("book.xml"));
    Element root = doucment.getRootElement();
    Element book = (Element)root.element("书").get(1);
    String valuename = book.element("书名").getText();
    //String valueattribute = book.element("书名").attribute("name").getValue();
}
    String attribute = book.element("书名").attributeValue("name");
//在第一本书上添加新售价
//本例存在编码问题
public void add() throws Exception{
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File("book.xml"));
    Element book = document.getRootElement().element("书");
}
    book.addElement("售价").setText("209");
    XMLWriter writer = new XMLWriter(new FileWriter("book.xml"));
    writer.write(document);
    writer.close();
//在第一本书上添加新售价
//乱码解决问题
public void add() throws Exception{
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File("book.xml"));
    Element book = document.getRootElement().element("书");
}
    book.addElement("售价").setText("209");
    XMLWriter writer = new XMLWriter(new OutputStreamWriter(new FileOutputStream("book.xml"),"UTF-8"));
    writer.write(document);
    writer.close();
//编码修改gb2312
public void add() throws Exception{
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File("book.xml"));
    Element book = document.getRootElement().element("书");
}
    book.addElement("售价").setText("209");
    OutputFormat format = OutputFormat.createPrettyPrint();
    format.setEncoding("gb2312");
    //XMLWriter writer = new XMLWriter(new OutputStreamWriter(new FileOutputStream("book.xml"),"gb2312"),format);
    XMLWriter writer = new XMLWriter(FileOutputStream("book.xml")),format);
    writer.write(document);
    writer.close();
//在第一本书指定位置添加新售价:<售价>299元</售价>,更改list集合
public void add() throws Exception{
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File("book.xml"));
    Element book = document.getRootElement().element("书");
}
    List list = book.elements();//书名,作者,售价
    Element price = DocumentHelper.createElement("售价");
    price.setText("299元");
    list.add(2,price);

    OutputFormat format = OutputFormat.createPrettyPrint();
    format.setEncoding("UTF-8");
    XMLWriter writer = new XMLWriter(FileOutputStream("book.xml")),format);
    writer.write(document);
    writer.close();
//删除添加的节点
public void delete() throws Exception{
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File("book.xml"));
    Element price = document.getRootElement().element("书").element("售价");
    price.getPartent().remove(price);
    OutputFormat format = OutputFormat.createPrettyPrint();
    format.setEncoding("UTF-8");
    XMLWriter writer = new XMLWriter(FileOutputStream("book.xml")),format);
    writer.write(document);
    writer.close();
//更新节点
public void delete() throws Exception{
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File("book.xml"));
    Element book=(Element)document.getRootElement().elements("书").get(1);
    book.element("作者").setText("hhhh");
    OutputFormat format = OutputFormat.createPrettyPrint();
    format.setEncoding("UTF-8");
    XMLWriter writer = new XMLWriter(FileOutputStream("book.xml")),format);
    writer.write(document);
    writer.close();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值