如何解析xml文件

一.概述-如何解析xml文件

由于项目的环境信息需要经常变动,需要将这些信息配置成全局变量,可以利用一个xml文件来保存这些全局的信息,然后解析这个xml文件,将信息传给到功能api,那么如何解析这个xml文档呢,请看下文,TKS!

二.编写解析xml的工具类ParseXml


public class ParseXml {

private Log log = new Log(this.getClass());

/**
* 解析xml文件,我们需要知道xml文件的路径,然后根据其路径加载xml文件后,生成一个Document的对象,
* 于是我们先定义两个变量String filePath,Document document
* 然后再定义一个load方法,这个方法用来加载xml文件,从而产生document对象。
*/
private String filePath;


private Document document;

/**
* 构造器用来new ParseXml对象时,传一个filePath的参数进来,从而初始化filePath的值
* 调用load方法,从而在ParseXml对象产生时,就会产生一个document的对象。
*/
public ParseXml(String filePath) {
this.filePath = filePath;
this.load(this.filePath);
}

/**
* 用来加载xml文件,并且产生一个document的对象
*/
private void load(String filePath){
File file = new File(filePath);
if (file.exists()) {
SAXReader saxReader = new SAXReader();
try {
document = saxReader.read(file);
} catch (DocumentException e) {
log.info("文件加载异常:" + filePath);
throw new DefinedException("文件加载异常:" + filePath);
}
} else{
log.info("文件不存在 : " + filePath);
throw new DefinedException("文件不存在 : " + filePath);
}
}

 

三.写一个类来加载这个全局配置的xml文件,转化为静态的数据供功能API直接获取

public class Config {

    private static Log log=new Log(Config.class);

    public static String browser;

    public static int waitTime;

    static{
        ParseXml px=new ParseXml("config/config.xml");
        browser=px.getElementText("/config/browser");
        log.info("the browser is: "+ browser);
        waitTime=Integer.valueOf(px.getElementText("/config/waitTime"));
        log.info("the wait time is: "+ waitTime);
    }

}

}

时间: 2024-11-04 17:56:41

如何解析xml文件的相关文章

使用XML序列化器生成XML文件和利用pull解析XML文件

首先,指定XML格式,我指定的XML格式如下: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <message> <sms> <body> 陈驰0 </body> <date> 1462162910995 </date> <address> 1380 </address> <type> 1 </type> &

解析xml文件的几个步骤

1.生成xml文件的解析器 XmlPullParser parser = Xml.newPullParser(); 2.设置解析器读取流对象的编码格式 parser.setInput(is, "utf-8"); 3.设置解析xml文件之后要存储的位置 List<WeatherInfo> weatherInfo = null; WeatherInfo info = null; 4.定义解析器解析到的事件类型 int type = parser.getEventType();

JS解析XML文件和XML字符串

JS解析XML文件 <script type='text/javascript'>    loadXML = function(xmlFile){        var xmlDoc=null;        //判断浏览器的类型        //支持IE浏览器        if(!window.DOMParser && window.ActiveXObject){            var xmlDomVersions = ['MSXML.2.DOMDocument.

Php 解析XML文件

Php 解析XML文件 Php 解析XML文件,仅供学习参考!示例代码如下: <?php header("Content-type: text/html; charset=utf-8"); if(!isset($_GET["_u"])){ echo "<script>javascript:alert('请勿非法访问!');window.history.back();</script>"; exit(); } $url

SAX解析XML文件

SAX是Simple API for XML的缩写,它并不是由W3C官方所提出的标准.SAX是一种轻量型的方法,不像DOM解析时,把XML文档全部载入内存中,在PC上操作,Dom还有 优势,但在手机中端上则无优势,因为手机内存和硬件都比不上PC强.使用 SAX 是比较安全的,并且 Android 提供了一种传统的 SAX 使用方法,以及一个便捷的 SAX 包装器.SAX采用基于事件驱动的处理方式,它将XML文档转换成一系列的事件,由单独的事件处理器来决定如何处理. 在SAX接口中,事件源是org

Android开发学习---使用XmlPullParser解析xml文件

Android中解析XML的方式主要有三种:sax,dom和pull关于其内容可参考:http://blog.csdn.net/liuhe688/article/details/6415593 本文将主要介绍pull解析器解析xml文件,环境为ubuntu 12.04+ intelij 13.1 + android sdk 2.1 一.创建一个XML项目,步骤如下: 二.解析一个xml文件: assets/person.xml <?xml version="1.0" encodi

【Android进阶】解析XML文件之使用DOM解析器

在前面的文章中,介绍了使用SAX解析器对XML文件进行解析,SAX解析器的优点就是占用内存小.这篇文章主要介绍使用DOM解析器对XML文件进行解析.DOM解析器的优点可能是理解起来比较的直观,当然,每个人对不同的解析方法可能有不同的喜好.但是DOM解析器有个比较大的缺点,就是占用内存比较多,在Android中的XML解析中,还是更推荐其他的解析方式. 下面介绍使用DOM解析器对XML进行解析. 下面是我们需要解析的xml文件 <?xml version="1.0" encodin

Dom方法,解析XML文件

Dom方法,解析XML文件的基本操作 1 package com.demo.xml.jaxp; 2 3 import java.io.IOException; 4 5 import javax.xml.parsers.DocumentBuilder; 6 import javax.xml.parsers.DocumentBuilderFactory; 7 import javax.xml.parsers.ParserConfigurationException; 8 import javax.x

解析xml文件

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js 解析xml文件</title> </head> <body> <script type="text/javascript"> var xmlDoc=document.implementation.

利用Pull生成和解析xml文件

解析xml的方式有很多,可以用dom,sax解析,但是在android平台上最常用是Pull解析,下面是简单的示例 <?xmlversion="1.0" encoding="UTF-8"?> <persons> <person id="18"> <name>allen</name> <age>36</age> </person> <person