- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11讲—dom4j解析XML文档
第四卷: XML解析器; 第一次实验报告提交;内容回顾;DOM4J解析XML文档;;dom4j概述;dom4j的封装和优势;;list
book疯狂XML讲义/book
game扫雷/game
sport乒乓球/sport
/list;//获取list元素下的所有子元素
List itemList=list.elements();
//遍历每个子元素
for(int I=0;IitemList.getLength();I++){
Element ele=(Element)itemList.get(I);
System.out.println(els.getText());
};下载和安装dom4j;Dom4j常用的API 【重点掌握】;Dom4j的API接口;;除此之外,如果程序需要创建一份新Document,
dom4j还提供了如下2个工具类
DocumentFactory:
该工具提供createDocument()方法用于创建Document对象
DocumentHelper
该工具提供了大量静态方法用于创建XML文档各组成部分
;使用dom4j解析XML文档【重点掌握】;public static void parse(Element ele){
//处理当前元素包含的所有属性
parseAttribute(ele);
//获取当前元素包含的所有子元素
List el = ele.elements();
//遍历每个子元素
for (Object e : el)
{ Element element = (Element)e;
//如果该元素的内容不是只包含字符串
if (!element.isTextOnly())
{parse(element);}//递归
else{
//处理当前元素的全部属性
parseAttribute(element);
//获取当前元素的内容
System.out.println(element.getQName().getName() + --- + element.getText());
}
}} ; //定义一个方法处理指定元素的所有属性
public static void parseAttribute(Element ele)
{
//获取Element元素的所有属性
List attList = ele.attributes();
//遍历Element元素每个属性
for (Object e : attList)
{
Attribute attr = (Attribute)e;
//访问当前元素的每个属性的属性值
System.out.println(ele.getQName().getName() + 元素的
+ attr.getQName().getName() + 属性值为:
+ attr.getValue());
}
};使用访问者遍历XML文档【重点掌握】;
;class YeekuVistor extends VisitorSupport
{
private String currentElement; //保存当前正在处理的节点
//当Visitor访问元素时回调该方法
public void visit(Element node) {
if (node.isTextOnly()) //如果节点内容全部是文本
{System.out.println(node.getName() + 元素的值是:+ node.getText());}
currentElement = node.getName(); }
//当Visitor访问属性时回调该方法
public void visit(Attribute node)
{System.out.println(currentElement + 元素的+ node.getName() + 属性的值是:
+ node.getText());}
//当Visitor访问处理指令时回调该方法
public void visit(ProcessingInstruction node)
{
System.out.println(处理指令+ node.getTarget(
文档评论(0)