如何解析XML文件或字符串

 我来答
好程序员
2017-04-23 · HTML5前端培训/大数据培训/Java
好程序员
好程序员是IT高端课程培训基地,从平凡到卓越,为梦想而拼搏。
向TA提问
展开全部
package com.huayu;

import Java.io.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
public class Test3 {

public static void main(String []args){

try {

//1.创建一个工厂
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();

//2.得到解析器
DocumentBuilder db=dbf.newDocumentBuilder();

//3.//字符串
String strTest="<?xml version=/"1.0/" encoding=/"gb2312/"?>"
+"<company>"
+"<person sex=/"male/">"
+"<name>小三子</name>"
+"<email>zhs5555555555555555555@sohu.com</email>"
+"</person>"
+"<person sex=/"male/">"
+"<name>小三子</name>"
+"<email>zhs@sohu.com</email>"
+"</person>"
+"<person sex=/"male/">"
+"<name>小三子</name>"
+"<email>zhs@sohu.com</email>"
+"</person>"
+"</company>";

//在编程中,字符串从网络传递
InputStream is=new ByteArrayInputStream(strTest.getBytes());
Document dm=db.parse(is);
NodeList nl=dm.getElementsByTagName("person");

//5.改进将 Node 换成 Element (Element提供了更加丰富的方法,解决不能指定得到某个子节点的问题)

//得到第一个人的信息
Element el=(Element)nl.item(0);

//指定得到某个子节点
NodeList nll=el.getElementsByTagName("email");

//打印name值,这是固定的取法
String name=((Element)nll.item(0)).getFirstChild().getNodeValue();

System.out.println("email="+name);

} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}
}

}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式