sax xpath读取xml字符串
public static void main(String[] args) throws ParserConfigurationException,
SAXException, IOException, XPathExpressionException {
// DocumentBuilderFactory domFactory = DocumentBuilderFactory
// .newInstance();
// domFactory.setNamespaceAware(true); // never forget this!
// DocumentBuilder builder = domFactory.newDocumentBuilder();
// Document doc = builder.parse("c:/solr.xml");
// XPathFactory factory = XPathFactory.newInstance();
// XPath xpath = factory.newXPath();
// Node nd = (Node)xpath.evaluate("solr/cores/@adminPath", doc, XPathConstants.NODE);
// String txt = nd.getNodeValue();
// System.out.println(txt);
//
// //多核循环读取,属性读取
// XPath mulXpath = factory.newXPath();
// Object o = mulXpath.evaluate("solr/cores/core", doc, XPathConstants.NODESET);
// NodeList nodes = (NodeList) o;
// for (int i = 0; i < nodes.getLength(); i++) {
// Node node = nodes.item(i);
// Node aNode =(Node) node.getAttributes().getNamedItem("name");
// System.out.println(aNode.getNodeValue());
// // String opt = DOMUtil.getAttr(node, "name", null);
// // System.out.println(opt);
// System.out.println(node.getNodeName());
// Node eNode = node.getFirstChild();
// System.out.println(eNode.getNodeValue());
// System.out.println(node.getNodeType());
// }
String strXml = "<?xml version=\"1.0\" encoding=\"utf-8\"?><class><stu><id>1,2,3</id></stu></class>";
DocumentBuilderFactory domFactory = DocumentBuilderFactory
.newInstance();
domFactory.setNamespaceAware(true); // never forget this!
DocumentBuilder builder = domFactory.newDocumentBuilder();
InputStream inputStream = new ByteArrayInputStream(strXml.getBytes());;
Document doc = builder.parse(inputStream);
XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
//Node nd = (Node)xpath.evaluate("class/stu/@id", doc, XPathConstants.NODE);
//String txt = nd.getNodeValue();
// System.out.println(txt);
//多核循环读取,属性读取
XPath mulXpath = factory.newXPath();
Object o = mulXpath.evaluate("class/stu/id", doc, XPathConstants.NODESET);
NodeList nodes = (NodeList) o;
for (int i = 0; i < nodes.getLength(); i++) {
Node node = nodes.item(i);
// Node aNode =(Node) node.getAttributes().getNamedItem("name");
// System.out.println(aNode.getNodeValue());
// String opt = DOMUtil.getAttr(node, "name", null);
// System.out.println(opt);
System.out.println(node.getNodeName());
Node eNode = node.getFirstChild();
System.out.println(eNode.getNodeValue());
System.out.println(node.getNodeType());
}
}
sax xpath读取xml字符串的更多相关文章
- 利用SAX解析读取XML文件
xml 这是我的第一个BLOG,今天在看<J2EE应用开发详解>一书,书中讲到XML编程,于是就按照书中的步骤自己测试了起来,可是怎么测试都不成功,后来自己查看了一遍源码,发现在读 ...
- 利用XPath读取Xml文件
之所以要引入XPath的概念,目的就是为了在匹配XML文档结构树时能够准确地找到某一个节点元素.可以把XPath比作文件管理路径:通过文件管理路 径,可以按照一定的规则查找到所需要的文件:同样,依据X ...
- XPath读取xml文件
1.创建解析工厂 2.创建解析器 3.读xml文件,生成w3c.docment对象树 4.创建XPath对象 5.通过路径查找对象 例子: import javax.xml.parsers.Docum ...
- sqlserver 读取xml 字符串方法
declare @xml xml declare @propertyName varchar(50) declare @str nvarchar(max) set @propertyName = ...
- dom4j处理xml文件,读取xml字符串,格式化xml文件
1.xml文件 <?xml version="1.0" encoding="UTF-8"?> <employees> <emplo ...
- 读取XML字符串到临时表
DECLARE @hdoc int DECLARE @doc xml SET @doc = '<CityValueSet> <CityItem> <CityId>2 ...
- MSSQL读取xml字符串到临时表
DECLARE @hdoc int DECLARE @doc xml SET @doc ='<CityValueSet> <CityItem> <CityId>20 ...
- 读取xml字符串
string strXml = @"<MessageData><pm_id>10</pm_id><pm_title>这是公司或者产品的名称&l ...
- xpath 操作XML
1.xpath 操作XML,底下部分代码被注释了,但是是完整功能,去除注释是正常使用的(有写命名和其他冲突,所以注释了) 总体有:完整读取xml,对xml的增删改查,对xml的特定操作 using S ...
随机推荐
- Execel(导出新方法):
#region 新方法 //var sbHtml = new StringBuilder(); //sbHtml.Append("<table border='1' cellspaci ...
- iOS开发中获取WiFi相关信息
iOS 开发中难免会遇到很多与网络方面的判断,这里做个汇总,大多可能是与WiFi相关的. 1.Ping域名.Ping某IP 有 时候可能会遇到ping 某个域名或者ip通不通,再做下一步操作.这里的p ...
- 一篇文章让Oracle程序猿学会MySql【未完待续】
一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...
- java类初始化的过程
在复习Thinking in java的过程中看到了相关内容,顺便整理一下,像下面一样的代码具体的执行顺序(ABCD都是类) public class A { public A(String text ...
- 快速学习html、css的经典笔记
HTML语言剖析 Html简介-目录 全写: HyperText Mark-up Language 译名: 超文本标识语言 简释:一种为普通文件中某些字句加上标示的语言,其目的在于运用标签(tag ...
- simple_tag,filte,分页以及cookie和装饰器
自定义simple_tag 内置的方法 首先Django中包含了很多内置的方法: 这里通过lower实现 在views视图函数中写如下代码: def tp3(request): name= " ...
- Django补充及初识Ajax
Django创建一对多表结构 首先现在models.py中写如下代码: from django.db import models # Create your models here. class Bu ...
- ios枚举规范
- 【转】Linux下apache/httpd服务启动与停止
apache服务,或者说httpd服务,如何启动,如何开机启动. 转来转去,找不到原文.. 操作系统环境:红帽5,具体如下:# uname -a Linux machine1 2.6.18-164.e ...
- 拥抱基于jquery.deferred的ajax,和层层嵌套回调的ajax说拜拜
前言 在项目中,无论是维护自己的代码,还是重构他人的项目代码,看到层层嵌套,异常冗余的某个function,那时我们的内心肯定是奔溃的! 在jquery1.5版本之前,如果我们某个操作需要多个ajax ...