迭代判断Categories下的Category元素下是否含有ProductCategory元素。
输出不包含ProductCategory的Category的id。
allCategories.xml如下:
<Categories>
<Category>
<Name>categoryname</Name>
<ID>1</ID>
<Category>
<Name>2</Name>
<ID>5</ID>
<ProductCategory>
<Name>ProductName</Name>
<ID>6</ID>
</ProductCategory>
</Category>
<ProductCategory>
<Name>ProductName</Name>
<ID>70</ID>
</ProductCategory>
</Category>
<Category>
<Name>categoryName</Name>
<ID>2</ID>
<Category>
<Name>ProductName</Name>
<ID>5</ID>
<ProductCategory>
<Name>ProductName</Name>
<ID>6</ID>
</ProductCategory>
</Category>
</Category>
<Category>
<Name>categoryName</Name>
<ID>3</ID>
</Category>
</Categories>
java代码如下:
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
public class FilterUitl {
private boolean flag = false;
public boolean isContainProductCategory(Element element) {
if (element.getChildText("ProductCategory") != null) {
flag = true;
} else {
List childElementList = element.getChildren("Category");
if (childElementList != null) {
for (int i = 0; i < childElementList.size(); i++) {
if(flag==true)break;
isContainProductCategory((Element)childElementList.get(i));
}
}
}
return flag;
}
public static void main(String[] args) throws Exception {
CopyOfFilterUitl copyOfFilterUitl = new CopyOfFilterUitl();
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build("allCategories.xml");
Element root = doc.getRootElement();
List<Element> list = root.getChildren("Category");
System.out.println("一级Category元素 size : ---------------" + list.size());
for (int i = 0; i < list.size(); i++) {
Element element = (Element) list.get(i);
System.out.println("一级Category元素id: " + element.getChildText("ID"));
boolean flag = copyOfFilterUitl.isContainProductCategory(element);
if (!flag) {
System.out.println("不含有ProductCategory的一级Category元素id: "
+ element.getChildText("ID"));
}
copyOfFilterUitl.flag=false;
}
}
}
分享到:
相关推荐
2.xml文件是由元素和元素的内容以及属性组成的,一个xml文件中只能有一个根元素,标签和标签的内容加在一起叫作一个元素。xml是大小写 敏感的,只能以字母或下划线开头。 字符转义 < 代表 ", > 代表 ">" , &...
1.4.3 xml有且只能有一个根元素 6 1.5 xml的编辑工具 7 1.6 xml文档 8 1.6.1 xml声明 9 1.6.2 文档类型声明 10 1.6.3 元素 11 1.6.4 注释 15 1.6.5 处理指令 15 1.6.6 空白处理 16 1.6.7 行尾处理 16 ...
1.4.3 xml有且只能有一个根元素 6 1.5 xml的编辑工具 7 1.6 xml文档 8 1.6.1 xml声明 9 1.6.2 文档类型声明 10 1.6.3 元素 11 1.6.4 注释 15 1.6.5 处理指令 15 1.6.6 空白处理 16 1.6.7 行尾处理 16 ...
1.4.3 xml有且只能有一个根元素 6 1.5 xml的编辑工具 7 1.6 xml文档 8 1.6.1 xml声明 9 1.6.2 文档类型声明 10 1.6.3 元素 11 1.6.4 注释 15 1.6.5 处理指令 15 1.6.6 空白处理 16 1.6.7 行尾处理 16 ...
1.4.3 xml有且只能有一个根元素 6 1.5 xml的编辑工具 7 1.6 xml文档 8 1.6.1 xml声明 9 1.6.2 文档类型声明 10 1.6.3 元素 11 1.6.4 注释 15 1.6.5 处理指令 15 1.6.6 空白处理 16 1.6.7 行尾处理 16 ...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...
3.2.3、XML解析的好帮手:JDOM 3.2.4、最出色的解析工具:DOM4J 3.3、使用JavaScript操作DOM 3.4、开发实战讲解(基于Oracle数据库) 第4章 Tomcat服务器的安装及配置 4.1、Web容器简介 4.2、Tomcat简介 4.3...