java递归遍历xml所有元素_Java学习之Xml系列二:xml按条件查询、xml递归遍历所有元素和属性...
2019独角兽企业重金招聘Python工程师标准>>>
xml中加入了几条,为了方便查询时作为示例。
话不多说见代码注释:
DTD文件:SwordTypeDefinition.dtd
XML文件:SwordLib.xml
SwordLibrary SYSTEM "SwordTypeDefinition.dtd">
欢欣之刃
1000
10
夜叉
2050
30
魔棒
200
0
java代码:
package JavaLeaner.XmlTest;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.junit.Test;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
public class XmlDemo2 {
/*
* 按照属性sno查询
*/
@Test
public void Test1() throws IOException, ParserConfigurationException, SAXException
{
System.out.println("请输入查找的sword的sno:");
//这里是java 的控制台输入方法,老忘记,TT
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String sno=br.readLine();
Element st= FindSwordBySno(sno);
if (st != null) {
String sname = st.getElementsByTagName("SwordName").item(0).getTextContent();
System.out.println("此剑为:" + sname);
}
else
{
System.out.println("这里不卖!!" );
}
/* 请输入查找的sword的sno:
s2
此剑为:夜叉
*/
}
Element FindSwordBySno(String sno)throws ParserConfigurationException, SAXException, IOException
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder docDuilder = factory.newDocumentBuilder();
Document doc = docDuilder.parse("src/JavaLeaner/XmlTest/SwordLib.xml");
NodeList list = doc.getElementsByTagName("Sword");
for(int i=0;i
java递归遍历xml所有元素_Java学习之Xml系列二:xml按条件查询、xml递归遍历所有元素和属性...相关推荐
- android xml java混合编程_Java学习中注解与多线程,网络编程与XML技术
本部分内容主要有集合框架及泛型,实用类,输入和输出处理,注解与多线程,网络编程与XML技术.初次学习这部分会感觉很难,主要是概念难于理解,最好是多看看例子,多练习.下面是个人的总结 拉勾IT课小编为大 ...
- java中集合的模型特点_Java 学习笔记(十四)集合
集合 在开发的时候,如果需要存储多个数据,可以使用数组,不过数据是固定长度的,如果需要存储可变长度的多个数据,可以使用集合.集合提供存储空间可变的存储类型,存储的容量可以实时改变 集合分类 Colle ...
- java分布式架构_Java学习五分钟系列:从单体架构转向分布式架构的难点
Java学习五分钟系列,目的是为让大家在短时间内搞清楚一项技术的概念.优缺点和适用场景,想要深入的了解,还需要投入更多的时间. 分布式架构和单体应用架构相比,可以充分利用多机器的性能优势,提高了系统的 ...
- java applet类开始博饼_java学习笔记---第一个applet程序以及一个小问题的解决
继续学习! 在D:\majava\文件夹下建立了一个helloworld_app.java,写入以下内容: import java.awt.*; import java.applet.*; publi ...
- vector 插入_Java学习五分钟系列:对比Vector、ArrayList、LinkedList
Java学习五分钟系列,目的是为让大家在短时间内搞清楚一项技术的概念.优缺点和适用场景,想要深入的了解,还需要投入更多的时间. Java的集合类,值得我们深入的学习,建议大家有时间的话,可以阅读一下源 ...
- JAVA Web学习笔记15 mybatis之查看详情 条件查询
查看详情 1.编写接口方法 BrandMapper接口 这里需要注意的是Brand selectById(int id);这里的id并没有与BrandMapper.xml的select方法里的id相对 ...
- 深度学习入门笔记系列 ( 二 )——基于 tensorflow 的一些深度学习基础知识
本系列将分为 8 篇 .今天是第二篇 .主要讲讲 TensorFlow 框架的特点和此系列笔记中涉及到的入门概念 . 1.Tensor .Flow .Session .Graphs TensorFlo ...
- java删除数组中指定元素_java学习中如何删除数组中的指定元素
java的api中,并没有提供删除数组中元素的方法.虽然数组是一个对象,不过并没有提供add()remove()或查找元素的方法.这就是为什么类似ArrayList和HashSet受欢迎的原因. 不过 ...
- android list 替换元素_Java学习之List集合
问:Java中有了数组为什么还需要List集合? 答:数组长度是固定的,在日常编程中可能经常不确定会有多少个对象,如果使用数组那么一旦数量超过了数组的长度就将发生java.lang.ArrayInde ...
最新文章
- 洗礼灵魂,修炼python(85)-- 知识拾遗篇 —— 深度剖析让人幽怨的编码
- mysql怎么通过frm和ibd文件还原数据
- STM32项目(一) —— 展示车座椅
- python中注释的快捷键_【Python】注释
- 苹果iPhone 13 Pro机型有望采用LTPO技术屏幕 支持120Hz刷新率
- Maven学习总结(10)——使用Maven编译项目gbk的不可映射问题
- C# async await 例子
- 服务器拷贝数据库文件,服务器怎么拷贝数据库文件
- 彻底搞懂 python 中文乱码问题
- 智障儿童欢乐多,蹦蹦哒哒过六一:用 Python 开发连连看小游戏
- 入学校计算机社团申请书,学校社团成立申请书
- 计算机网络常见的面试题(牛客网总结)
- CAE相关优秀文章汇总
- 如何调整android手机正常颜色,安卓手机怎么调颜色反转
- java 设计模式实战,适配器模式之万物拟人化
- Ubuntu上Firefox字体太小--高分屏背锅
- 小学语文三年级阅读理解专项练习附答案~寓言二则
- 聚米优选:“文学式vlog”主播,这么猛的吗?
- 如何对ccd视觉检测设备进行保养
- PCB如何输出Gerber文件和IPC网表
热门文章
- java面试题34下面关于程序编译说法正确的是()
- mybatis学习(50):嵌套查询
- mint-ui 写一个下拉滑动选择,mt-popup和mt-picker结合使用
- ref的mysql_ref:Mysql授权远程登陆
- nodejs接收post数据
- Golang 垃圾回收机制
- 拆分-洛谷P2745 [USACO5.3]窗体面积Window Area
- 关于逐项作用函数的用法
- bzoj3524 [Poi2014]Couriers
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加...