您的位置:首页 > 编程语言 > Java开发

Java dom4j操作

2016-03-23 16:07 381 查看
读取数据

一、dom4j操作blob字段

1、从数据库中读

Document document =null;

formdata = new String(rs.getBytes(1), "UTF-8");

document = DocumentHelper.parseText(formdata);

二、读取文件

String path=Config.workPath+"cfg/FieldMap.xml";

InputStream is =new FileInputStream(new File(path));

SAXReader sax = new SAXReader();

Document xmlDoc = sax.read(is);

元素操作

1) 获取根节点

Element rootElt = doc.getRootElement();

2)获取根节点下的子节点

Iterator iter = rootElt.elementIterator("head");

3)遍历head节点

while (iter.hasNext()) {

Element recordEle = (Element) iter.next();

// 拿到head节点下的子节点title值

String title = recordEle.elementTextTrim("title");

或者title=recordEle.attributeValue("title");

}

4)得到同级的标签值.

例如: <elements RPT_ISLOCK="0" RPT_INDEX="15" RPT_NAME="Button_15"/>

得到 itemEle.attribute("RPT_INDEX").getValue()

element.attributeValue("RPT_UPDATESTIME")

5)将Element转化成List

List list = element.attributes();

6)得到子集标签值

例如:<elements>

<a>aaaa</a>

<b>bbbb</a>

</<elements>

Iterator data = root.elementIterator("elements");

while (data.hasNext()) {

Element item = (Element) data.next();

String a= item.element("a").getText();

String b= item.element("a").getText();

}

=========dom4j创建xml==============

1\创建xml

 *//** 建立document对象 *//*

Document document = DocumentHelper.createDocument();

*//** 建立XML文档的根tables *//*

Element tables=document.addElement("tables");

*//** 加入一行注释 *//*

  booksElement.addComment("This is a test for dom4j, holen, 2004.9.11");

  *//** 加入第一个book节点 *//*

   Element bookElement = booksElement.addElement("book");

  *//** 加入show属性内容 *//*

  bookElement.addAttribute("show","yes");

*//** 加入title节点 *//*

  Element titleElement = bookElement.addElement("title");

  *//** 为title设置内容 *//*

   titleElement.setText("Dom4j Tutorials");

try{

  *//** 将document中的内容写入文件中 *//*

  XMLWriter writer = new XMLWriter(new FileWriter(new File(filename)));

  writer.write(document);

   writer.close();

  *//** 执行成功,需返回1 *//*

  returnValue = 1;

  }catch(Exception ex){

  ex.printStackTrace();

  }

   return returnValue;

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