解析xml格式的字符串的案例
2013-04-25 08:30
429 查看
如何解析xml格式的字符串的案例
/*
* 创建日期 2008-4-15
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.tsinghua;
import java.io.*;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.*;
import org.w3c.dom.*;
/**
* @author administrator
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class Dome2 {
public static void main(String[] args) {
// 开始 解析 person.xml文件
//1解析器 工厂 类
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
try {
// 通过 解析器 工厂 创建 一个 解析 器
DocumentBuilder db=dbf.newDocumentBuilder();
//告诉 改 解析器 去 解析 那个 文件 -->dom树
// Document dm=db.parse("f:\\person.xml");
//对字符串解析
String testStr= "<?xml version=\"1.0\" encoding=\"gb2312\"?>"+
"<!--该xml存储了人员信息-->"+
"<company><person sex=\"male\" id=\"0001\"><name att=\"ok\"><realname>小小</realname>"+
"<nickname>小猪</nickname></name><email>zhangsan@sohu.com</email></person></company>";
//将该字符串转为InputStream流
InputStream iStream=new ByteArrayInputStream(testStr.getBytes());
Document dm=db.parse(iStream);
//得到 所有 person节点
NodeList persons=dm.getElementsByTagName("person");
for(int i=0;i<persons.getLength();i++){
//element 和 node 是 同一 概念
//不同 的 是 element 提供 更多 方法
Element personElement = (Element)persons.item(i);
//得到person节点的属性
String id=personElement.getAttribute("id");
System.out.println("id="+id);
NodeList nameList=personElement.getElementsByTagName("name");
Element name=(Element)nameList.item(0);
String att=name.getAttribute("att");
System.out.println("att="+att);
//取出 name 的 值
// System.out.println("name="+nameList.item(0).getFirstChild().getNodeValue());
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
} finally {
}
}
}
/*
* 创建日期 2008-4-15
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.tsinghua;
import java.io.*;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.*;
import org.w3c.dom.*;
/**
* @author administrator
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class Dome2 {
public static void main(String[] args) {
// 开始 解析 person.xml文件
//1解析器 工厂 类
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
try {
// 通过 解析器 工厂 创建 一个 解析 器
DocumentBuilder db=dbf.newDocumentBuilder();
//告诉 改 解析器 去 解析 那个 文件 -->dom树
// Document dm=db.parse("f:\\person.xml");
//对字符串解析
String testStr= "<?xml version=\"1.0\" encoding=\"gb2312\"?>"+
"<!--该xml存储了人员信息-->"+
"<company><person sex=\"male\" id=\"0001\"><name att=\"ok\"><realname>小小</realname>"+
"<nickname>小猪</nickname></name><email>zhangsan@sohu.com</email></person></company>";
//将该字符串转为InputStream流
InputStream iStream=new ByteArrayInputStream(testStr.getBytes());
Document dm=db.parse(iStream);
//得到 所有 person节点
NodeList persons=dm.getElementsByTagName("person");
for(int i=0;i<persons.getLength();i++){
//element 和 node 是 同一 概念
//不同 的 是 element 提供 更多 方法
Element personElement = (Element)persons.item(i);
//得到person节点的属性
String id=personElement.getAttribute("id");
System.out.println("id="+id);
NodeList nameList=personElement.getElementsByTagName("name");
Element name=(Element)nameList.item(0);
String att=name.getAttribute("att");
System.out.println("att="+att);
//取出 name 的 值
// System.out.println("name="+nameList.item(0).getFirstChild().getNodeValue());
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
} finally {
}
}
}
相关文章推荐
- 如何解析xml格式的字符串的案例
- c# 解析xml格式字符串
- JAVA解析XML格式字符串
- 利用Java代码把oracle的blob字段内容解析成XML格式的字符串
- 使用Jdom解析xml格式字符串
- unity解析Json字符串案例
- 利用Java代码把oracle的blob字段内容解析成XML格式的字符串
- Java中读取XML文件,生成XML格式的字符串并解析这个字符串
- Java生成和解析XML格式文件和字符串的实例代码
- AVA解析XML格式字符串
- dom4j解析xml文件 或者xml格式字符串
- C# 将XML格式字符串,写入数据集的表中 XML解析
- 使用Dom4j来解析xml格式字符串
- 安卓解析xml格式字符串
- java解析xml格式字符串
- Dom4j解析xml格式的字符串【java】
- libxml2如何解析xml格式的字符串
- C++下基于COM的XML格式字符串解析,生成
- 今天遇见的一个问题xml格式的字符串,有办法直接的解析吗
- c# 发送post请求到服务器,并解析得到的xml格式的字符串