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字符串的更多相关文章

  1. 利用SAX解析读取XML文件

    xml     这是我的第一个BLOG,今天在看<J2EE应用开发详解>一书,书中讲到XML编程,于是就按照书中的步骤自己测试了起来,可是怎么测试都不成功,后来自己查看了一遍源码,发现在读 ...

  2. 利用XPath读取Xml文件

    之所以要引入XPath的概念,目的就是为了在匹配XML文档结构树时能够准确地找到某一个节点元素.可以把XPath比作文件管理路径:通过文件管理路 径,可以按照一定的规则查找到所需要的文件:同样,依据X ...

  3. XPath读取xml文件

    1.创建解析工厂 2.创建解析器 3.读xml文件,生成w3c.docment对象树 4.创建XPath对象 5.通过路径查找对象 例子: import javax.xml.parsers.Docum ...

  4. sqlserver 读取xml 字符串方法

    declare @xml xml declare @propertyName varchar(50)  declare @str nvarchar(max)   set @propertyName = ...

  5. dom4j处理xml文件,读取xml字符串,格式化xml文件

    1.xml文件 <?xml version="1.0" encoding="UTF-8"?> <employees> <emplo ...

  6. 读取XML字符串到临时表

    DECLARE @hdoc int DECLARE @doc xml SET @doc = '<CityValueSet> <CityItem> <CityId>2 ...

  7. MSSQL读取xml字符串到临时表

    DECLARE @hdoc int DECLARE @doc xml SET @doc ='<CityValueSet> <CityItem> <CityId>20 ...

  8. 读取xml字符串

    string strXml = @"<MessageData><pm_id>10</pm_id><pm_title>这是公司或者产品的名称&l ...

  9. xpath 操作XML

    1.xpath 操作XML,底下部分代码被注释了,但是是完整功能,去除注释是正常使用的(有写命名和其他冲突,所以注释了) 总体有:完整读取xml,对xml的增删改查,对xml的特定操作 using S ...

随机推荐

  1. 史上最全的java随机数生成算法分享(转)

    这篇文章主要介绍了史上最全的java随机数生成算法,我分享一个最全的随机数的生成算法,最代码的找回密码的随机数就是用的这个方法 String password = RandomUtil.generat ...

  2. js获取当前时间戳 不需毫秒数

    var timestamp = Date.parse(new Date())/1000;

  3. vert.x学习(八),用JDBCClient配合c3p0操作数据库

    今天学习了下vert.x的JDBCClient,我这里将今天的学习笔记记录下来.这次学习中使用了c3p0. 用使用JDBCClient和c3p0得现在pom.xml文件里面导入对应的依赖,下面贴出xm ...

  4. css定位 与position

    本文同时发表于本人个人网站 www.yaoxiaowen.com 在正式讨论position之前,我们需要知道几个概念. 块元素:独占一行的元素.比如div,h1~h6,p等,它是自带换行的. 内联元 ...

  5. 毕设1--利用Java实现网页的模板功能技术---简要了解

    首先,关于我对自己的毕业设计题目的理解,其中没有接触过的技术有怎么用Java实现将原有的Word的模板上传到网页中,在网页中进行相关操作.之所以把这部分放在一开始来进行了解是因为没有接触过这一方面,比 ...

  6. wordpress多站点环境设置上传附件大小

    多站点环境更改上传附件大小: php.ini post_max_size = 8M upload_max_filesize = 10M 另外,后台域名管理中设置/网络设置/可以设置上传文件大小. 代码 ...

  7. 一个js简单的日历显示效果的函数

    用一个函数简单的实现一个月份的日历,效果如下: 这个日历效果有高亮显示,我实现的思维比较简单. 我把上面的日历效果用表格table生成,分成两个部分. 第一个部分:就是前面的第一排,我用一行<t ...

  8. DER input, Integer tag error的异常处理

    1.首先我向大家介绍一下我做的东西,发生这个异常的情况. 我做的是一个电签的系统,在调用某公司的API生成证书,然后与安证通进行同步证书的任务. 2.问题具体的异常 具体异常如下: 2016/08/2 ...

  9. gitlab

    这里解决gitlab文件上传大小限制 http://blog.csdn.net/fdipzone/article/details/45544497 通过浏览器debug知道是nginx服务解释器 进入 ...

  10. Java提高篇—— 简单介绍Java 的内存泄漏

    java最明显的一个优势就是它的内存管理机制.你只需简单创建对象,java的垃圾回收机制负责分配和释放内存.然而情况并不像想像的那么简单,因为在Java应用中经常发生内存泄漏. 本教程演示了什么是内存 ...