登录 |  注册
首页 >  编程入门 >  Java基础教程·入门课堂笔记 >  Java读取XML

Java读取XML

SAX API

下面是关键的SAX API的摘要:

用法
SAXParserFactory创建由系统属性javax.xml.parsers.SAXParserFactory确定的解析器的实例。
SAXParserSAXParser接口定义了几个重载的parse()方法。
SAXReaderSAXParser包装一个SAXReader,并从SAXParser的getXMLReader()方法返回。
DefaultHandlerDefaultHandler实现了ContentHandler,ErrorHandler,DTDHandler,和EntityResolver接口。 通过使用DefaultHandler,我们可以只覆盖我们需要的那些。
ContentHandler此接口定义回调方法,如startDocument,endDocument,startElement和endElement。 这些方法在识别XML标记时调用。它还定义了被调用的方法characters()当解析器遇到XML元素中的文本时。它定义被调用的processingInstruction()当解析器遇到内联处理指令时。
ErrorHandler它使用error(),fatalError()和warning()方法来响应各种解析错误。 默认的错误处理程序只会抛出致命错误和的异常忽略验证错误。
DTDHandler用于处理DTD
EntityResolver它的resolveEntity()方法用于标识数据。

我们一般实现大多数 ContentHandler 方法。

为了提供更稳健的实现,我们可以从ErrorHandler实现方法。


SAX包

SAX解析器在下表中列出的软件包中定义。

描述
org.xml.sax定义SAX接口。
org.xml.sax.ext定义用于更高级SAX处理的SAX扩展。
org.xml.sax.helpers定义SAX API的辅助类。
javax.xml.parsers定义SAXParserFactory类,它返回SAXParser。

DOM API

javax.xml.parsers.DocumentBuilderFactory 类返回一个 DocumentBuilder 实例。

我们使用 DocumentBuilder 实例来产生一个 Document 对象退出XML文档。

构建器由系统属性 javax.xml.parsers.DocumentBuilderFactory 确定。

DocumentBuilder 中的 newDocument()方法可以创建一个实现 org.w3c.dom.Document 接口的空Document。

我们可以使用其中一个构建器的解析方法来创建一个 Document 从现有的XML文档。

 


DOM包

文档对象模型实现在中定义下表中列出的软件包。

描述
org.w3c.dom定义XML文档的DOM编程接口。
javax.xml.parsers定义DocumentBuilderFactory类和DocumentBuilder类。

XSLT API

TransformerFactory 创建一个 Transformer 对象。

XSLT API在下表中显示的包中定义。

描述
javax.xml.transform定义TransformerFactory和Transformer类。 我们可以从变换器对象调用transform()方法来进行变换。
javax.xml.transform.dom用于从DOM创建输入和输出对象的类。
javax.xml.transform.sax用于从SAX解析器创建输入对象和从SAX事件处理程序输出对象的类。
javax.xml.transform.stream用于从I / O流创建输入对象和输出对象的类。

StAX APIs

StAX为开发人员提供了SAX和DOM解析器的替代方法。

StAX可以用更少的内存进行高性能流过滤,处理和修改。

StAX是用于流式XML处理的标准的双向拉解析器接口。

StAX提供比SAX更简单的编程模型,并且比DOM更高的内存效率。

StAX可以解析和修改XML流作为事件。

StAX包

StAX APIs在下表中显示的包中定义。

描述
javax.xml.stream定义迭代XML文档元素的XMLStreamReader接口。 定义XMLStreamWriter接口,指定如何写入XML。
javax.xml.transform.stax提供StAX特定的转换API。
上一篇: JavaIO教程
下一篇: Java集合教程
推荐文章
  • 在HTML中,如果你想让一个输入框(input元素)不可编辑,你可以通过设置其readonly属性来实现。示例如下:input type="text" value="此处内容不可编辑" readonly在上述代码中,readonly属性使得用户无法修改输入框中的内容。另外,如果你希望输入框完全不可交
  • ASP.NET教程ASP.NET又称为ASP+,基于.NETFramework的Web开发平台,是微软公司推出的新一代脚本语言。ASP.NET是一个使用HTML、CSS、JavaScript和服务器脚本创建网页和网站的开发框架。ASP.NET支持三种不一样的开发模式:WebPages(Web页面)、
  • C# 判断判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。下面是大多数编程语言中典型的判断结构的通常形式:判断语句C#提供了以下类型的判断语句。点击链接查看每个语句的细节。语句描述if语句一个 if语句 由一个布尔表达式后跟
  • C#循环有的时候,可能需要多次执行同一块代码。通常情况下,语句是顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。编程语言提供了允许更为复杂的执行路径的多种控制结构。循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的通常形式:循环类型C#提供了以下几种循环类型
  • C#数组(Array)数组是一个存储相同类型元素的固定大小的顺序集合。数组是用来存储数据的集合,一般认为数组是一个同一类型变量的集合。声明数组变量并不是声明number0、number1、...、number99一个个单独的变量,而是声明一个就像numbers这样的变量,然后使用numbers[0]
  • ASP.NET是一个由微软公司开发的用于构建Web应用程序的框架,它是.NETFramework的一部分。它提供了一种模型-视图-控制器(MVC)架构、Web表单以及最新的ASP.NETCore中的RazorPages等多种开发模式,可以用来创建动态网页和Web服务。以下是一些基础的ASP.NET编
学习大纲