在java中可以使用saxbuilder来操作xml格式文件,下面介绍一下saxbuilder的常用方法.
jar包:jdom-1.0.jar
import java.io.InputStream;
import java.io.InputStreamReader;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.xml.sax.InputSource;
try {
//使用的是默认的解析器
SAXBuilder builder = new SAXBuilder(false);
InputStream strm = new ByteArrayInputStream(("<DATA>"+xml+"</DATA>").getBytes());
Document doc = null;
try {
InputStreamReader Gb2312Str = new InputStreamReader(strm, "GBK");
InputSource source = new InputSource(Gb2312Str);
doc = builder.build(source);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// 得到根元素:
Element root = doc.getRootElement();
//获取头部信息
Element head= root.getChild("HEAD");
//获取LIST节点信息
Element dataRoot = root.getChild("LIST");
//获取List下的子节点集合
List items = dataRoot.getChildren("ITEM");
if ((items != null) && (items.size() > 0)) {
for (Iterator iter = items.iterator(); iter.hasNext(); ) {
Element item = (Element)iter.next();
//获取单个节点属性
String id= item.getChildTextTrim("ID")
}
}