-
DOM 解析 获取节点名、值:getNodeName() getNodeValue() getTextContent() 获取子节点:getChildNodes() 返回 NodeList 获取属性节点:getAttributes() 返回 NamedNodeMap JDOM 解析 获取节点名、值:getName() getValue() 获取子节点:getChildren() 返回 List<Element> 获取属性节点:getAttributes() 返回 List<Attribute>查看全部
-
1、使用 foreach 遍历子元素节点时,获取索引使用 indexOf + 1 for(Element ele : eles) eles.indexOf(ele)+1 2、获取元素的属性节点 List<Attribute> attrs = ele.getAttributes(); 如果知道属性名称通过 getAttributeValue("属性名") 获取属性值查看全部
-
JDOM解析文件 1.创建一个SAXBuilder对象 SAXBuilder saxb=newSAXBuilder(); 2.创建输入流,将xml文件加载到输入流中(抛出FileNotFoundException) Inputstream in=new FileInputstream(xxx.xml); 3.通过SAXBuilder的Build方法将输入流加载到saxb中获取dom对象 Document doc = saxb.build(is);查看全部
-
JUnit是Java提供的一种进行单元测试的自动化工具。测试方法可以写在任意类中的任意位置。使用JUnit可以没有main()入口进行测试。 DOM4J在灵活性和对复杂xml的支持上都要强于DOM DOM4J的应用范围非常的广,例如在三大框架的Hibernate中是使用DOM4J的方式解析文件的。 DOM是w3c组织提供的一个官方解析方式,在一定程度上是有所应用的。 当XML文件比较大的时候,会发现DOM4J比较好用 1.JUnit:Java提供的单元测试;@Test注解;采用JUnit不需要程序入口main方法 2.性能测试结果:几kB的xml文件;建议使用DOM4J解析 DOM-33ms SAX-6ms JDOM-69ms DOM4J-45ms 工程右键build path --Add library--JUnit单元测试 --version:JUnit4 DOM:33,SAX:6 JDOM:69;DOM4J:45 DOM 有可能溢出 多使用DOM4J查看全部
-
//创建SAXReader的对象reader SAXReader reader = new SAXReader(); //通过reader的read加载person.xml文件 Document document = reader.read(new File("person.xml")); //通过document对象获取根节点persons Element persons = document.getRootElement(); //通过element对象的elementIterator方法获取迭代器 Iterator it = persons.getIterator(); //遍历迭代器,获取根节点中的信息(persons)适用于我们不知道节点的名称时 while(it.hasNext()){ Element person = (Element)it.next(); //获取person的属性名和属性值 List<Attribute> personAttrs = person.attributes(); //由于是List类型所以我们使用for each()循环进行遍历 for(Attribute attr : personAttrs){ System.out.println("节点名:" + attr.getName() + "--节点值:" + attr.getValue()); } }查看全部
-
JDOM使用过程中JAR包的引用 我们的项目中直接配置build path指定的jar包如果是在我们PC的硬盘某个路径,那么在日后导出项目时候,项目中是没有jar包的。 我们只能在我们的项目下建立一个lib文件夹将所需jar包复制进去,再进行build path的配置即可。查看全部
-
乱码问题: 修改xml文件中的encoding属性,即修改字符集; 在代码中设置字符集,InputStreamReader isr = new InputStreamReader(inputStream,"UTF-8");查看全部
-
DOM 解析 获取节点名、值:getNodeName() getNodeValue() getTextContent() 获取子节点:getChildNodes() 返回 NodeList 获取属性节点:getAttributes() 返回 NamedNodeMap JDOM 解析 获取节点名、值:getName() getValue() 获取子节点:getChildren() 返回 List<Element> 获取属性节点:getAttributes() 返回 List<Attribute> 对person节点的子节点的节点名及节点值遍历 List<Element> personChillds = person.getChildren(); for(Element child : personChilds){ System.out.println("节点名:" + child.getName() + "---节点值:" + child.getValue()); }查看全部
-
SAX解析XML的速度比DOM的块, SAX的解析XML的解析器,需要重写startElement()开始解析的方法and endElemaent()方法 结束解析的方法and characters()方法查看全部
-
handler开始解析 走到每一个节点都调用startElement(); 情况1. 已知节点的属性名和属性个数 -> attributes。getValue("属性名"); 情况2. 不知道节点的属性名和属性个数 -> 遍历到attributes.getLength(); -> 属性名 : attributes.getQname() 属性值: attributes.getValue("第几个属性");查看全部
-
SAX解析xml步骤 1.通过SAXParseFactory的静态newInstance()方法获取SAXParserFactory实例factory 2.通过SAXParserFactory实例的newSAXParser()方法返回SAXParser实例parser 3.创建一个类继承DefaultHandle,重写方发进行业务已处理创建这个类的实例handle查看全部
-
DOM解析原理: 先把XML文件整个加载到内存中,在逐个解析。 SAX解析原理: 通过自己创建的Handler类,去逐个分析遇到的每一个节点;(节点分析是从最外层向里层逐个开始)查看全部
-
.JDOM中的Element得到的Attribute的getValue都是有实际值的文本,getValue不保存空格换行等组成的文本查看全部
-
JDOM解析文件 1.创建一个SAXBuilder对象 SAXBuilder saxb=newSAXBuilder(); 2.创建输入流,将xml文件加载到输入流中(抛出FileNotFoundException) Inputstream in=new FileInputstream(xxx.xml); 3.通过SAXBuilder的Build方法将输入流加载到saxb中获取dom对象 Document doc = saxb.build(is);查看全部
-
不同系统间通信、不同软件间通信、不同平台间通信使用xml文件查看全部
举报
0/150
提交
取消