读取xmljava(读取xml解析c+)

读取xmljava(读取xml解析c+) 大家并不陌生,借来给大家详细说说吧!

  今天给各位分享读取xmljava的知识,其中也会对读取xml解析c+进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

  本文目录一览:

  1、JAVA 读取XML文件

2、java如何读取xml文件

3、java 读取xml子元素

  JAVA 读取XML文件

  import java.util.List;

  import org.dom4j.Document;

  import org.dom4j.DocumentException;

  import org.dom4j.Element;

  import org.dom4j.io.SAXReader;

  public class XmlTester {

  public static void main(String[] args) throws DocumentException {

  // 使用了dom4j解析xml

  // 读取目录下用来测试的test.xml文件,取得xml主内容

  Document document = new SAXReader().read(“src/abc/test.xml”).getDocument();

  int i = 1;

  // 遍历文档根节点(wuxialist)下的子节点列表,即txtbook节点的集合

  for(Element txtbook : (ListElement)document.getRootElement().elements()){

  //取得txtbook节点下的name节点的内容

  System.out.println(i+”.”+txtbook.element(“name”).getText());

  i++; //原来这里少些了这一行,先补上

  }

  }

  }

  java如何读取xml文件

  xml解析还是用dom4j方便,

  import java.util.List;

  import org.dom4j.Document;

  import org.dom4j.DocumentException;

  import org.dom4j.Element;

  import org.dom4j.io.SAXReader;

  public class XMLPaser {

  public static void main(String[] args) {

  paserXML();

  }

  public static void paserXML(){

  SAXReader reader = new SAXReader();

  try {

  // 读取XML文件

  Document doc = reader.read(“NewFile.xml”);

  Element root = doc.getRootElement();

  System.out.println(root.getName());

  ListElement param = root.elements();

  for (Element element : param) {

  if(element.attributeValue(“name”).equals(“a”)){

  System.out.println(element.getText());

  }

  }

  } catch (DocumentException e) {

  e.printStackTrace();

  }

  }

  }

  java 读取xml子元素

  java中获取xml节点元素值 根据不同的处理xml方式不同而不同。

  java中解析xml的方式:大体可以使用以下四种

  ————————————————————

  DOM(Document Object Model)

  为 XML 文档的已解析版本定义了一组接口。解析器读入整个文档,

  然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构。

  优点:整个文档树在内存中,便于操作;支持删除、修改、重新排列等多种功能;

  缺点:将整个文档调入内存(包括无用的节点),浪费时间和空间;

  使用场合:一旦解析了文档还需多次访问这些数据;硬件资源充足(内存、CPU)

  SAX(Simple API for XML)

  为解决DOM的问题,出现了SAX。SAX ,事件驱动。

  当解析器发现元素开始、元素结束、文本、文档的开始或结束等时,发送事件,

  程序员编写响应这些事件的代码,保存数据。优点:不用事先调入整个文档,占用资源少;

  SAX解析器代码比DOM解析器代码小,适于Applet,下载。

  缺点:不是持久的;事件过后,若没保存数据,那么数据就丢了;无状态性;

  从事件中只能得到文本,但不知该文本属于哪个元素;

  使用场合:Applet;只需XML文档的少量内容,很少回头访问;机器内存少;

  DOM4J

  DOM4J 是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,

  同时它也是一个开放源代码的软件。如今你可以看到越来越多的 Java 软件都在使用 DOM4J 来读写 XML,

  特别值得一提的是连 Sun 的 JAXM 也在用 DOM4J

  JDOM

  为减少DOM、SAX的编码量,出现了JDOM;优点:20-80原则,极大减少了代码量。

  使用场合:要实现的功能简单,如解析、创建等,但在底层,JDOM还是使用SAX(最常用)、DOM、Xanan文档。

  ——————————

  参考代码

  dom4j

  ——————————

  import org.dom4j.Document;

  import org.dom4j.DocumentException;

  import org.dom4j.DocumentHelper;

  import org.dom4j.Element;

  import org.dom4j.io.SAXReader;

  import org.dom4j.io.XMLWriter;

  ———————————————

  File f = new File(“students.xml”);

  SAXReader reader = new SAXReader();

  Document doc = reader.read(f);

  Element root = doc.getRootElement();

  for (Iterator iter = root.elementIterator(); iter.hasNext();) {

  Element element = (Element) iter.next();

  // System.out.println(element.attributeValue(“email”));

  String ids=element.elementText(“stuId”);

  System.out.println(ids);

  String names=element.elementText(“stuName”);

  System.out.println(names);

  String ages=element.elementText(“age”);

  System.out.println(ages);

  }

  ————————————

  dom 方式

  —————

  import javax.xml.parsers.*;

  import javax.xml.transform.*;

  import javax.xml.transform.dom.DOMSource;

  import javax.xml.transform.stream.StreamResult;

  ————————

  DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

  // 允许名字空间

  // factory.setNamespaceAware(true);

  // 允许验证

  // factory.setValidating(true);

  // 获得DocumentBuilder的一个实例

  DocumentBuilder builder = null;

  try {

  builder = factory.newDocumentBuilder();

  } catch (ParserConfigurationException pce) {

  System.err.println(pce);

  // 出异常时输出异常信息,然后退出,下同

  System.exit(1);

  }

  Document doc = null;

  // 解析文档,并获得一个Document实例。

  try {

  try {

  // InputStream is=new FileInputStream(“students.xml”);

  doc = builder.parse(“students.xml”);

  // doc = builder.parse(is);

  } catch (SAXException e) {

  // TODO Auto-generated catch block

  e.printStackTrace();

  }

  } catch (DOMException dom) {

  System.err.println(dom.getMessage());

  System.exit(1);

  } catch (IOException ioe) {

  System.err.println(ioe);

  // System.exit(1);

  }

  for (int i = 0; i nlStudent.getLength(); i++) {

  Element elmtStudent = (Element) nlStudent.item(i);

  String email = elmtStudent.getAttribute(“email”);

  System.out.println(email);

读取xmljava(读取xml解析c+)

  NodeList ids = elmtStudent.getElementsByTagName(“stuId”);

读取xmljava(读取xml解析c+)

  Element id = (Element)ids.item(0);

  Node tId = id.getFirstChild();

  System.out.println(tId.getNodeValue());

  NodeList names = elmtStudent.getElementsByTagName(“stuName”);

  Element e = (Element)names.item(0);

  Node tName = e.getFirstChild();

  System.out.println(tName.getNodeValue());

  }

  读取xmljava的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于读取xml解析c+、读取xmljava的信息别忘了在本站进行查找喔。

以上是嗨壳技术分享网(www.heikehao.com)小编对“ 读取xmljava(读取xml解析c+) ”的详细解答,希望能够帮助到大家。

原创文章,作者:java,如若转载,请注明出处:https://www.heikehao.com/326.html

(0)
javajava
上一篇 2020年1月2日
下一篇 2020年1月2日

相关推荐

  • java引入jar包如何使用

    JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。为 J2EE 应用程序创建的 JAR 文件是 EAR 文件(企业 …

    2023年12月21日 java
  • 植物大战僵尸java触屏,植物大战僵尸jave

    今日,嗨壳技术分享网小编分享植物大战僵尸java触屏,植物大战僵尸jave 相关内容,内容如下。   谁有好玩的手机JAVA全触屏游戏,有的麻烦发到我的邮箱815417071@QQ…

    2020年5月11日
  • 包含java单兵的词条

    包含java单兵的词条   什么样的程序员在35岁以后依然被公司抢着要?   身体好。没有哪个公司希望招一个病秧子进去,贡献还没来得及做,医药费先是一大笔开销,身体总是生病,也耽误…

    2022年6月9日
  • 单例模式多文档窗体java

    关于单例模式多文档窗体java话题,今日,嗨壳技术分享网小编抽出大半天的时间整理一些单例模式多文档窗体java内容,让我们一起了解一些技术吧!   java怎么实现单实例运行   …

    2020年4月19日
  • java伽马分布概率

    今天,嗨壳技术分享网给大家整理一些java伽马分布概率内容。   2020-01-07 常见分布及概率函数   随机变量取一切可能值的概率的规律称为概率分布(probability…

    2020年2月28日
  • java函数速查手册chm,java数学函数包

    java函数速查手册chm,java数学函数包   Java中函数的定义及作用在哪里查找,难道只能碰见一个在网上搜一个?_百…   1、函数其实就是一个功能,定义函数就…

    2020年2月28日
  • 关于javamongodbupdate的信息

    今日,嗨壳技术分享网小编分享关于javamongodbupdate的信息 相关内容,内容如下。   怎么使用java操作mongodb更新整个文档   1、DBCollection…

    2023年11月2日
  • 红色警戒2009-红警java手机版的简单介绍

    今天,嗨壳技术分享网给大家整理一些红色警戒2009-红警java手机版的简单介绍内容。   手机版“红警”叫什么名字。   有手机版红色警戒   手机版红色警戒与电脑版红色警戒并不…

    2020年2月28日
  • 一个java文件只有(java源文件只能有一个类?)

    关于一个java文件只有(java源文件只能有一个类?)话题,今日,嗨壳技术分享网小编抽出大半天的时间整理一些一个java文件只有(java源文件只能有一个类?)内容,让我们一起了…

    2020年1月2日
  • 欧朋浏览器java通用,欧朋浏览器精简版

    关于欧朋浏览器java通用,欧朋浏览器精简版话题,今日,嗨壳技术分享网小编抽出大半天的时间整理一些欧朋浏览器java通用,欧朋浏览器精简版内容,让我们一起了解一些技术吧!   什么…

    2020年2月6日