import javaxxmlparsersDocumentBuilder;
import javaxxmlparsersDocumentBuilderFactory;
import orgw3cdomDocument;
import orgw3cdomElement;
import orgw3cdomNodeList;
public class Xml {
public static void main(String[] args) {
try {
DocumentBuilderFactory factory = DocumentBuilderFactory
newInstance();
DocumentBuilder builder = factorynewDocumentBuilder();
Document document = builderparse(new File("E:\\新建 文本文档 (3)xml"));
Element rootElement = documentgetDocumentElement();
NodeList list = rootElementgetElementsByTagName("Header");
Element element = (Element) listitem(0);
Systemoutprintln(elementgetChildNodes()item(0)getNodeValue());
} catch (Exception e) {
Systemoutprintln("exception:" + egetMessage());
}
}
}解析一个XML文件有四种方式:DOM 、JDOM、SAX 、DOM4J 。我以DOM解析方式来简单说明下。
首先,我们先导入所需要的包:
import javaxxmlDocumentBuilderFactory; //用来创建解析器工厂
import javaxxmlDocumentBuilder; //解析器对象
import orgw3cdomDocument; //Document类实现了W3C组织定义的接口规范。
import orgw3cdomNodeList; //节点列表类要导入的包,它也是W3C组织下的类。
DocumentBuilderFactory类是一个抽象类,不能直接实例化,但该类提供了一个newInstance方法,我们使用该方法先获得一个新的实例对象factory:
DocumentBuilderFactory factory = DocumentBuilderFactorynewInstance();
接着,我们从解析器工厂获取解析器对象:
DocumentBuilder builder = factorynewDocumentBuilder();
这时,可以调用DocumentBuilder对象的parse方法,它会返回一个新的DOM文档对象:
Document doc = builderparse(“>以下是我的答案,希望对你有帮助。
SAXReader xmlReader = new SAXReader();
try {
Document doc = xmlReaderread(new File("F:\\bookconfigxml")); //读取xml配置文件
Element root = docgetRootElement(); //获取根节点
List<Element> elements = rootelements(); //获取根节点下的所有子节点
for(Element element : elements){ //遍历子节点
Systemoutprintln("节点名:"+elementgetName()+",节点内文本:"+elementgetData());
}
} catch (DocumentException e) {
eprintStackTrace();
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)