import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.Attr;
import org.w3c.dom.NodeList;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
public class XmlParser
{ public static void main(String[] args)
throws Exception
{ xmlwriter();
}
public static void xmlparser()
throws Exception
{
DocumentBuilderFactory xdf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = xdf.newDocumentBuilder();
Document d = db.parse("C:\\A1\\customer.xml");
NodeList nl = d.getElementsByTagName("customer");
for (int i = 0; i < nl.getLength(); i++)
{
Element e = (Element) nl.item(i);
Attr a = e.getAttributeNode("customerID");
System.out.println(a.getNodeValue());
NodeList nl1 = e.getElementsByTagName("customerName");
System.out.println(nl1.item(0).getFirstChild().getNodeValue());
}
}
public static void xmlwriter() throws Exception
{
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
DocumentBuilder db=dbf.newDocumentBuilder();
Document d=db.parse("C:\\A1\\customer.xml");
NodeList nl=d.getElementsByTagName("customerName");
for(int i=0;i<nl.getLength();i++)
{
Element e=(Element) nl.item(i);
System.out.println(e.getFirstChild().getNodeValue());
e.getFirstChild().setNodeValue(e.getFirstChild().getNodeValue()+"111111111111111");
}
TransformerFactory tff=TransformerFactory.newInstance();
Transformer tf=tff.newTransformer();
tf.transform(new DOMSource(d),new StreamResult("c:\\aa.xml"));
} }
运行:
DocumentBuiler db
Document d=db.parse(“具体文件路径”);
NodeList nl=d.getElementsByTagName(“节点名”)
分享到:
相关推荐
很实用的一个dom解析xml实例,很容易上手
在实际应用中,DOM解析适合处理小到中等规模的XML文档,因为将整个文档加载到内存中可能会消耗大量资源。对于大型XML文档,更推荐使用SAX(Simple API for XML)或StAX(Streaming API for XML)等流式解析器,它们...
Dom4j是一个开源的Java库,它提供了一个灵活且高性能的方式来处理XML。它支持XPath表达式,可以方便地获取XML文档中的特定节点。此外,Dom4j还支持SAX和DOM解析器,以及JAXB和JDOM的接口,使其能够与多种XML处理技术...
DOM解析器将整个XML文档加载到内存中,形成一个节点树,每个元素、属性、文本等内容都对应一个节点。这种解析方式使得处理大型XML文件时可能会消耗大量内存,但同时也提供了对XML文档的全面和即时访问。 首先,我们...
DOM解析器将整个XML文件加载到内存中,形成一个树形结构,可以方便地遍历和修改XML文档的任何部分。然而,由于它需要一次性加载整个文件,对于大文件来说可能会消耗大量内存。 在"ReadXMLDemo"中,使用DOM解析的...
DOM4J 是一个强大的Java库,用于处理XML文档。它提供了一套灵活且高效的API,使得XML的解析、创建、查询和修改变得简单。DOM4J这个名字来源于Document Object Model (DOM) 和Java的结合,但它实际上并不是DOM API的...
DOM4J是另一个流行的Java XML处理库,提供了灵活的API,支持DOM、SAX和StAX解析方式。它具有强大的XPath支持,易于学习,适合复杂查询,但内存消耗介于DOM和SAX之间。 5. JAXB(Java Architecture for XML Binding...
通常,你需要在解析过程中将数据添加到一个数组,然后在UITableView的`numberOfRowsInSection`和`cellForRowAt`方法中使用这个数组。 6. **注意点** - 当处理大文件时,`NSXMLParser`可能会消耗大量内存,因为它一...
本教程将深入讲解如何使用DOM4J进行高效XML解析,并通过一个简单的DEMO程序进行演示。 首先,我们需要了解DOM4J的基本概念。DOM4J采用的是Document Object Model(DOM)模型,它将XML文档转换为一个树形结构,每个...
DOM解析适用于小规模、频繁访问的XML文件,SAX解析适合处理大型XML,而Pull Parser则因为其轻量级和高效的特性,在Android设备上被广泛采用。 在"Android解析xml的Demo"中,你可以找到这三种解析方式的具体实现,...
标题中的"dom_xml_demo"暗示了我们关注的焦点是DOM(Document Object Model)解析XML文档的一个示例。DOM是一种在JavaScript或任何支持它的语言中处理XML文档的标准方式,它允许程序和脚本创建、访问和修改XML文档的...
综上所述,这个“xml解析demo以及资料”涵盖了XML解析、XML与数据库交互的关键技术,包括选择合适的解析策略、数据映射、SQL操作以及字符编码的处理。通过学习和实践这些内容,开发者可以更好地理解和掌握XML在实际...
DOM4J是一个非常灵活且功能强大的Java库,它提供了对XML文档的全面处理,包括读取、写入、修改和操作XML文件。 XML(Extensible Markup Language)是一种标记语言,用于存储和传输结构化数据。它的主要优点是数据与...
1. DOM解析:它将整个XML文档加载到内存中,形成一个树形结构。每个节点代表XML文档的一个部分,可以通过遍历节点来访问和修改数据。这种方法适合小型XML文件,因为大型文件会消耗大量内存。 2. SAX解析:SAX是一种...
5. 在解析过程中,SAX解析器会调用处理器的事件方法,执行对应的处理代码。 示例代码可能如下: ```java import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.helpers....
Demo4j并不是一个官方的库或框架,可能是为了教学或演示目的而创建的一个小型Java项目,它可能包含了对XML解析的一些基本操作示例。在Java中,我们通常使用DOM、SAX或StAX等API来解析XML。 1. DOM解析器: DOM...
总的来说,这个"Android中解析html网页示例Demo"涵盖了网络请求、HTML解析(如使用Jsoup)和数据展示的基本流程,对于初学者来说,这是一个很好的实践项目,可以帮助他们理解Android应用如何与网络交互并处理返回的...
例如,一个用户对象可能包含一个地址数组,每个地址又是一个包含街道、城市等信息的对象。在解析时,我们需要递归地遍历这些结构,通过键访问值,对于数组则需要迭代其元素。 4. **处理特殊类型**:JSON中的true和...
在"vue 2.0写的一个小demo"中,我们可以看到开发者运用了Vue的多个核心概念和技术。以下是对这些知识点的详细解释: 1. **双向数据绑定**:Vue 的核心特性之一是双向数据绑定(Two-Way Data Binding)。通过 `v-...
总之,"stax 解析xml demo project"是一个很好的实践平台,通过这个项目,你可以深入理解STAX的工作机制,学习如何有效地处理大型XML文档,并掌握XML解析的高效方法。在实际工作中,当需要处理大量的XML数据时,STAX...