/*DOM解析*/
package org.fanzone.xml;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
/**
* Title: base<br>
* Description: DOM Parser<br>
* Copyright: Copyright (c) 2011 <br>
* Create DateTime: Jun 14, 2011 5:46:40 PM <br>
* @author wangmeng
*/
public class DomParserXML {
public static void main(String[] args){
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = null;
Document doc = null;
try {
builder = factory.newDocumentBuilder();
doc = builder.parse("F:/LSPFix.xml");
NodeList nodeList = doc.getElementsByTagName("LSPFix");
for(int i=0;i<nodeList.getLength();i++){
NodeList childNodes = nodeList.item(i).getChildNodes();
for(int j=0;j<childNodes.getLength();j++){
System.out.println(childNodes.item(i));;
}
}
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/*SAX解析*/
package org.mars.xml;
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class SAXParserXML extends DefaultHandler{
private Vector<String> tagName;
private Vector<String> tagValue;
private int step;
@Override
public void startDocument() throws SAXException {
tagName = new Vector<String>();
tagValue = new Vector<String>();
step = 0;
}
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
tagName.add(qName);
for(int i=0;i<attributes.getLength();i++){
System.out.println("attrName--> "+attributes.getQName(i)+"\tattrValue--> "+attributes.getValue(attributes.getQName(i)));
}
}
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
step = step + 1;
}
@Override
public void characters(char[] ch, int start, int length) throws SAXException {
if(tagName.size()-1 == tagValue.size()){
tagValue.add(new String(ch,start,length));
}
}
@Override
public void endDocument() throws SAXException {
for(int i=0;i<tagName.size();i++){
if(!tagName.get(i).equals("") || tagName.get(i)!=null){
System.out.println("tagNameEnd--> "+tagName.get(i)+"\ttagValueEnd--> "+tagValue.get(i));
}
}
System.out.println("step---> "+step);
}
public static void main(String[] args){
SAXParserFactory spf = SAXParserFactory.newInstance();
try {
SAXParser saxParser = spf.newSAXParser();
saxParser.parse(new File("F:/LSPFix.xml"), new SAXParserXML());
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
易语言 xml解析 易语言 xml解析 易语言 xml解析 易语言 xml解析 易语言 xml解析 易语言 xml解析 易语言 xml解析 教程 带源码
解析xml解析xml解析xml解析xml解析xml解析xml解析xml解析xml解析xml解析xml解析xml解析xml解析xml解析xml
读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好。 TinyXML是一个开源的解析XML的解析库,能够用于C++,...
C# XML解析方式
XML解析、XML生成工具,灵活好用的XML解析器、封装接口简单易用
XML解析技术研究XML解析技术研究XML解析技术研究XML解析技术研究XML解析技术研究
使用dom4j解析XML,用于解析复杂XML,多层镶嵌XML,多层循环xml解析,解析完保存到实体类
LabVIEW XML解析器示例, 包含xml加载,保存,解析等功能
minixml是适合嵌入式系统的xml解析器,支持dom
ios开发,简单的xml解析,亲测可用,自己认真研究研究,不要遇到点问题就放弃。
利用jdom解析复杂xml到bean中: 1.依赖的jar:jdom-1.1.jar,commons-beanutils.1.8.3.jar,commons-logging-1.1.1.jar ...用模板将xml解析 具体可以打断点运行主类:/xml_parse/src/com/vhl/main/StartMain.java,观察
Mini-XML 是一个小型 XML 解析库,您可以使用它来读取应用程序中的 XML 数据文件或字符串,而无需大型非标准库 读取 UTF-8 和 UTF-16 并写入 UTF-8 编码的 XML 文件和字符串。 数据存储在链表树结构中,保留 XML ...
java心电图xml解析源码。
XML 解析XML 解析XML 解析XML 解析XML 解析XML 解析XML 解析
java实现xml解析word文档代码实现,通过解析word书签实现java动态写入word文档。方便使用。
XML解析 很全 一看就懂的东东。。。。。。。。。
js的XML解析器可以解析基本的XML文档、XML字符串,对于有特殊字符的XML文档还存在BUG(谷歌浏览器不能使用)
rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET ...
XML解析支持库
C++ XML解析之TinyXML篇