《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.7.1 不带命名空间的文档

3.7.1 不带命名空间的文档

要建立一棵DOM树,你可以从一个空的文档开始。通过调用DocumentBuilder类的newDocument方法可以得到一个空文档。

使用Document类的createElement方法可以构建文档里的元素:

使用createTextNode方法可以构建文本节点:

使用以下方法可以给文档添加根元素,给父结点添加子节点:

在建立DOM树时,可能还需要设置元素属性,这只需调用Element类的setAttribute方法即可:

时间: 2024-10-11 12:56:02

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.7.1 不带命名空间的文档的相关文章

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一2.3.3 ZIP文档

2.3.3 ZIP文档 ZIP文档(通常)以压缩格式存储了一个或多个文件,每个ZIP文档都有一个头,包含诸如每个文件名字和所使用的压缩方法等信息.在Java中,可以使用ZipInputStream来读入ZIP文档.你可能需要浏览文档中每个单独的项,getNextEntry方法就可以返回一个描述这些项的ZipEntry类型的对象.向ZipInputStream的getInputStream方法传递该项可以获取用于读取该项的输入流.然后调用closeEntry来读入下一项.下面是典型的通读ZIP文件

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.2 解析XML文档

3.2 解析XML文档 要处理XML文档,就要先解析(parse)它.解析器是这样一个程序:它读入一个文件,确认这个文件具有正确的格式,然后将其分解成各种元素,使得程序员能够访问这些元素.Java库提供了两种XML解析器: 像文档对象模型(Document Object Model, DOM)解析器这样的树型解析器(tree parser),它们将读入的XML文档转换成树结构. 像XML简单API(Simple API for XML, SAX)解析器这样的流机制解析器(streaming pa

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.1.1 XML文档的结构

3.1.1 XML文档的结构 XML文档应当以一个文档头开始,例如: 严格来说,文档头是可选的,但是强烈推荐你使用文档头. 注意:因为建立SGML是为了处理真正的文档,因此XML文件被称为文档,尽管许多XML文件是用来描述通常不被称作文档的数据集的. 文档头之后通常是文档类型定义(Document Type Def?inition,DTD),例如: 文档类型定义是确保文档正确的一个重要机制,但是它不是必需的.我们将在本章的后面讨论这个问题. 最后,XML文档的正文包含根元素,根元素包含其他元素.

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.7 生成XML文档

3.7 生成XML文档 现在你已经知道怎样编写读取XML的Java程序了.下面让我们开始介绍它的反向过程,即产生XML输出.当然,你可以直接通过一系列print调用,打印出各元素.属性和文本内容,以此来编写XML文件,但这并不是一个好主意.这样的代码会非常冗长复杂,对于属性值和文本内容中的那些特殊符号(如:"和<),一不注意就会出错. 一种更好的方式是用文档的内容构建一棵DOM树,然后再写出该树的所有内容.下面的小节将讨论其细节.

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一导读

前 言 致读者 本书是按照Java SE 8完全更新后的<Java核心技术 卷Ⅱ 高级特性(原书第10版)>.卷Ⅰ主要介绍了Java语言的一些关键特性:而本卷主要介绍编程人员进行专业软件开发时需要了解的高级主题.因此,与本书卷Ⅰ和之前的版本一样,我们仍将本书定位于用Java技术进行实际项目开发的编程人员. 编写任何一本书籍都难免会有一些错误或不准确的地方.我们非常乐意听到读者的意见.当然,我们更希望对本书问题的报告只听到一次.为此,我们创建了一个FAQ.bug修正以及应急方案的网站http:/

Java核心技术 卷Ⅰ 基础知识(原书第10版)

Java核心技术系列 Java核心技术 卷Ⅰ 基础知识 (原书第10版) Core Java Volume I-Fundamentals (10th Edition) [美] 凯S.霍斯特曼(Cay S. Horstmann) 著 周立新 陈 波 叶乃文 邝劲筠 杜永萍 译 图书在版编目(CIP)数据 Java核心技术 卷Ⅰ 基础知识(原书第10版) / (美)凯S. 霍斯特曼(Cay S. Horstmann)著:周立新等译. -北京:机械工业出版社,2016.8 (Java核心技术系列) 书

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.5 使用命名空间

3.5 使用命名空间 Java语言使用包来避免名字冲突.程序员可以为不同的类使用相同的名字,只要它们不在同一个包中即可.XML也有类似的命名空间(namespace)机制,可以用于元素名和属性名. 名字空间是由统一资源标识符(Uniform Resource Identif?ier, URI)来标识的,比如: HTTP的URL格式是最常见的标识符.注意,URL只用作标识符字符串,而不是一个文件的定位符.例如,名字空间标识符: 表示了不同的命名空间,尽管Web服务器将为这两个URL提供同一个文档.

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.8 XSL转换

3.8 XSL转换 XSL转换(XSLT)机制可以指定将XML文档转换为其他格式的规则,例如,转换为纯文本.XHTML或任何其他的XML格式.XSLT通常用来将某种机器可读的XML格式转译为另一种机器可读的XML格式,或者将XML转译为适于人类阅读的表示格式. 你需要提供XSLT样式表,它描述了XML文档向某种其他格式转换的规则.XSLT处理器将读入XML文档和这个样式表,并产生所要的输出(参见图3-7). XSLT规范很复杂,已经有很多书描述了该主题.我们不可能讨论XSLT的全部特性,所以我们

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.6.1 使用SAX解析器

3.6.1 使用SAX解析器 SAX解析器在解析XML输入数据的各个组成部分时会报告事件,但不会以任何方式存储文档,而是由事件处理器建立相应的数据结构.实际上,DOM解析器是在SAX解析器的基础上构建的,它在接收到解析器事件时构建DOM树. 在使用SAX解析器时,需要一个处理器来为各种解析器事件定义事件动作.ContentHandler接口定义了若干个在解析文档时解析器会调用的回调方法.下面是最重要的几个: startElement和endElement在每当遇到起始或终止标签时调用. char

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.14 并行流

1.14 并行流 流使得并行处理块操作变得很容易.这个过程几乎是自动的,但是需要遵守一些规则.首先,必须有一个并行流.可以用Collection.parallelStream()方法从任何集合中获取一个并行流: 只要在终结方法执行时,流处于并行模式,那么所有的中间流操作都将被并行化. 当流操作并行运行时,其目标是要让其返回结果与顺序执行时返回的结果相同.重要的是,这些操作可以以任意顺序执行. 下面的示例是一项你无法完成的任务.假设你想要对字符串流中的所有短单词计数: 这是一种非常非常糟糕的代码.