uTools-Manuals/docs/java/org/w3c/dom/ls/LSSerializer.html

463 lines
31 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
compact2, compact3
</div>
<div class="subTitle">
org.w3c.dom.ls
</div>
<h2 class="title" title="Interface LSSerializer">Interface LSSerializer</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre>public interface <span class="typeNameLabel">LSSerializer</span></pre>
<div class="block">
<span>A <code>LSSerializer</code>提供了将DOM文档序列化写入到XML中的API。</span>
<span>将XML数据写入字符串或输出流。</span>
<span>在序列化期间进行的任何更改或修复仅影响序列化数据。</span>
<span><code>Document</code>对象及其子进程不会被序列化操作所改变。</span>
<p> <span>在序列化XML数据期间按照[ <a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">DOM Level 3 Core</a> ]附录B中的定义进行命名空间修复。[ <a href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113">DOM Level 2 Core</a> ]允许空字符串作为真实的命名空间URI。</span> <span>如果一个<code>namespaceURI</code><code>Node</code>是空字符串,则序列化将会将它们视为<code>null</code> ,忽略前缀。</span> </p>
<p> <span><code>LSSerializer</code>接受任何节点类型进行序列化。</span> <span>对于类型为<code>Document</code><code>Entity</code>节点将尽可能创建格式良好的XML如果文档或实体来自解析操作并且自创建以来不变则保证良好的形式</span> <span>这些节点类型的序列化输出分别是XML文档或外部XML实体并且是XML解析器的可接受输入。</span> <span>对于所有其他类型的节点,序列化形式依赖于实现。</span> </p>
<p> <span>内的<code>Document</code> <code>DocumentFragment</code> ,或<code>Entity</code>被序列化, <code>Nodes</code>进行如下处理</span> </p>
<ul>
<li> <span>写入<code>Document</code>节点包括XML声明除非参数“xml-declaration”设置为<code>false</code> 和DTD子集如果存在于DOM中</span> <span>编写<code>Document</code>节点将整个文档序列化。</span> </li>
<li> <span><code>Entity</code>节点,当由<code>LSSerializer.write</code>直接写入时,输出实体扩展,但没有完成命名空间修复。</span> <span>所产生的输出将作为外部实体有效。</span> </li>
<li> <span>如果参数“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-entities">entities</a> ”设置为<code>true</code> <code>EntityReference</code>节点被序列化为形式“的实体引用<code>&amp;entityName;</code>在输出”。</span> <span>子节点(扩展)的实体引用将被忽略。</span> <span>如果参数“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-entities">entities</a> ”设置为<code>false</code> ,则仅实体引用的子项被序列化。</span> <span><code>EntityReference</code>没有子节点(没有对应的<code>Entity</code>节点或对应的<code>Entity</code>节点没有子节点)始终是序列化的。</span> </li>
<li> <span><code>CDATAsections</code>不能在指定的输出编码表示包含内容的字符根据“处理<a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-split-cdata-sections">split-cdata-sections</a> ”参数。</span> <span>如果参数设置为<code>true</code> ,则分割<code>CDATAsections</code> ,并且将不可表示的字符序列化为普通内容中的数字字符引用。</span> <span>没有指定分割的确切位置和数量。</span> <span>如果参数设置为<code>false</code> ,如果参数“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-well-formed">well-formed</a> ”设置为<code>true</code>中的<code>CDATAsection</code>将报告为<code>"wf-invalid-character"</code>错误。</span> <span>该错误是无法恢复的 - 没有提供替代字符和继续序列化的机制。</span> </li>
<li> <span><code>DocumentFragment</code>节点通过按照文档片段中出现的顺序序列化文档片段的子节点进行序列化。</span> </li>
<li> <span>所有其他节点类型元素文本等都被序列化为相应的XML源表单。</span> </li>
</ul>
<p> <span><b>注意:</b> Node的<code>Node</code>并不总是生成格式良好的XML文档<code>LSParser</code>在解析生成的序列化时可能会导致致命错误。</span> </p>
<p> <span>在文档的字符数据(标记之外)中,不能直接表示的任何字符都将替换为字符引用。</span> <span>&lt;”和“”的出现被预定义的实体lt;</span> <span>amp;</span> <span>除了需要(例如在例如']]&gt;的情况下使用gt;之外可以不使用其他预定义实体gt;,和)。</span> <span>任何不能直接在输出字符编码中表示的字符串行化为数字字符引用(并且由于字符编码标准通常使用字符的十六进制表示,因此鼓励串行化字符引用时使用十六进制表示)。</span> </p>
<p> <span>为了允许属性值包含单引号和双引号,撇号或单引号字符(')可以表示为“”“,双引号字符(”“)表示为”“,新行字符不能直接在输出字符编码的属性值中表示的其他字符作为数字字符引用进行序列化。</span> </p>
<p> <span>在标记之外,但在属性之外,任何出现在输出字符编码中无法表示的字符都将报告为<code>DOMError</code>致命错误。</span> <span>一个例子是与被序列化元素&lt;LaCa�ada/&gt; <code>encoding="us-ascii"</code></span> <span>这将导致生成<code>DOMError</code> “wf-invalid-character-in-node-name”如“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-well-formed">well-formed</a> ”中提出的)。</span> </p>
<p> <span>当由参数“设置请求<a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-normalize-characters">normalize-characters</a>上的” <code>LSSerializer</code>为true时字符规范化根据定义的执行<a href="http://www.w3.org/TR/2004/REC-xml11-20040204/#dt-fullnorm">fully normalized个</a>包括在[附录E.字符<a href="http://www.w3.org/TR/2004/REC-xml11-20040204/">XML 1.1</a>上的所有数据]被序列化,无论标记和字符数据。</span> <span>字符归一化过程仅影响正在写入的数据;</span> <span>在序列化完成后它不会更改DOM对文档的视图。</span> </p>
<p> <span>需要实现支持“UTF-8”“UTF-16”“UTF-16BE”和“UTF-16LE”的编码以保证所有XML解析器需要支持的所有编码中的数据是可序列化的。</span> <span>当编码为UTF-8时字节顺序标记是否被序列化或输出为大端或小端则取决于实现。</span> <span>当编码为UTF-16时输出是大端还是小端依赖于实现但必须为非字符输出生成字节顺序标记例如<code>LSOutput.byteStream</code><code>LSOutput.systemId</code></span> <span>如果未生成字节顺序标记,则会报告“字节顺序标记需要”警告。</span> <span>当编码为UTF-16LE或UTF-16BE时输出为big-endianUTF-16BE或little-endianUTF-16LE并且不会生成字节顺序标记。</span> <span>在所有情况下,编码声明,如果产生的,将对应于序列化过程中使用的编码方式(例如, <code>encoding="UTF-16"</code>如果请求UTF-16将出现</span> </p>
<p> <span>命名空间在序列化期间被修复序列化过程将验证命名空间声明命名空间前缀和与元素和属性相关联的命名空间URI是一致的。</span> <span>如果发现不一致,则将更改文档的序列化形式以将其删除。</span> <span>在序列化文档时用于进行命名空间修正的方法是[ <a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">DOM Level 3 Core</a> ]附录B.1“命名空间规范化”中<a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">定义的</a>算法。</span> </p>
<p> <span>在序列化文档时参数“discard-default-content”控制是否序列化非指定数据。</span> </p>
<p> <span>序列化时,错误和警告通过错误处理程序( <code>LSSerializer.domConfig</code>的“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler">error-handler</a> ”参数)报告给应用程序。</span> <span>该规范绝对不会定义在序列化DOM节点时可能发生的所有可能的错误和警告但是定义了一些常见的错误和警告情况。</span> <span><code>DOMError.type</code>定义的错误和警告的类型( <code>DOMError.type</code> )为:</span> </p>
<dl>
<dt>
<code>"no-output-specified" [fatal]</code>
</dt>
<dd>
<span>在写入<code>LSOutput</code>如果在LSOutput中未指定输出<code>LSOutput</code></span>
</dd>
<dt>
<code>"unbound-prefix-in-entity-reference" [fatal]</code>
</dt>
<dd>
<span>如果配置参数“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-namespaces">namespaces</a> ”设置为<code>true</code>并且其替换文本包含未绑定的命名空间前缀的实体在名称空间前缀没有绑定的位置中引用,则引发。</span>
</dd>
<dt>
<code>"unsupported-encoding" [fatal]</code>
</dt>
<dd>
<span>如果遇到不受支持的编码,则引发。</span>
</dd>
</dl>
<p> <span>除了提出定义的错误和警告之外预计实施将针对任何其他错误和警告情况如IO错误未找到文件拒绝许可...等))提出实施特定的错误和警告。</span> </p>
<p> <span>另见<a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407">Document Object Model (DOM) Level 3 Load and Save Specification</a></span> </p>
</div> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- --> </a> <h3>方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
<caption>
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t3"><span><a href="javascript:show(4);">抽象方法</a></span><span class="tabEnd"> </span></span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor" id="i0">
<td class="colFirst"><code><a href="../../../../org/w3c/dom/DOMConfiguration.html" title="interface in org.w3c.dom">DOMConfiguration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#getDomConfig--">getDomConfig</a></span>()</code>
<div class="block">
<code>DOMConfiguration</code>对象在
<code>LSSerializer</code>时序列化DOM节点。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code><a href="../../../../org/w3c/dom/ls/LSSerializerFilter.html" title="interface in org.w3c.dom.ls">LSSerializerFilter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#getFilter--">getFilter</a></span>()</code>
<div class="block">
当应用程序提供一个过滤器时,序列化程序将在序列化每个节点之前调用过滤器。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#getNewLine--">getNewLine</a></span>()</code>
<div class="block">
要在XML中使用的字符的行尾序列被写出。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#setFilter-org.w3c.dom.ls.LSSerializerFilter-">setFilter</a></span>(<a href="../../../../org/w3c/dom/ls/LSSerializerFilter.html" title="interface in org.w3c.dom.ls">LSSerializerFilter</a> filter)</code>
<div class="block">
当应用程序提供一个过滤器时,序列化程序将在序列化每个节点之前调用过滤器。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#setNewLine-java.lang.String-">setNewLine</a></span>(<a href="../../../../java/lang/String.html" title="class in java.lang">String</a> newLine)</code>
<div class="block">
要在XML中使用的字符的行尾序列被写出。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#write-org.w3c.dom.Node-org.w3c.dom.ls.LSOutput-">write</a></span>(<a href="../../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> nodeArg, <a href="../../../../org/w3c/dom/ls/LSOutput.html" title="interface in org.w3c.dom.ls">LSOutput</a> destination)</code>
<div class="block">
按照LSSerializer界面的一般说明按照上述方式对指定的节点进行
<code>LSSerializer</code>化。
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code><a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#writeToString-org.w3c.dom.Node-">writeToString</a></span>(<a href="../../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> nodeArg)</code>
<div class="block">
按照LSSerializer接口的一般说明按照上述的顺序序列化
<code>LSSerializer</code>节点。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/w3c/dom/ls/LSSerializer.html#writeToURI-org.w3c.dom.Node-java.lang.String-">writeToURI</a></span>(<a href="../../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> nodeArg, <a href="../../../../java/lang/String.html" title="class in java.lang">String</a> uri)</code>
<div class="block">
充当如果一种简便方法
<code>LSSerializer.write</code>被称为具有
<code>LSOutput</code>没有编码指定和
<code>LSOutput.systemId</code>集到
<code>uri</code>参数。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="getDomConfig--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getDomConfig</h4> <pre><a href="../../../../org/w3c/dom/DOMConfiguration.html" title="interface in org.w3c.dom">DOMConfiguration</a> getDomConfig()</pre>
<div class="block">
<span><code>DOMConfiguration</code>对象在<code>LSSerializer</code>时序列化DOM节点。</span>
<br/>
<span>除了[ <a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">DOM Level 3 Core</a> ]中定义的DOMConfiguration接口识别的<a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#DOMConfiguration">参数</a>外, <a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">LSSerializer</a><code>DOMConfiguration</code>对象<code>LSSerializer</code>添加或修改了以下参数:</span>
<dl>
<dt>
<code>"canonical-form"</code>
</dt>
<dd>
<dl>
<dt>
<code>true</code>
</dt>
<dd>
<span>[ <em>可选</em> ]根据[ <a href="http://www.w3.org/TR/2001/REC-xml-c14n-20010315">Canonical XML</a> ]中规定的规则写入文档。</span>
<span>除了“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-canonical-form">canonical-form</a> ”[ <a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">DOM Level 3 Core</a> ]中<a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-canonical-form">描述</a>的行为外, <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-canonical-form">将此</a>参数设置为<code>true</code>将会将参数“format-pretty-print”“discard-default-content”和“xml-declaration”设置为<code>false</code></span>
<span>将这些参数之一设置为<code>true</code>将将此参数设置为<code>false</code></span>
<span>当“canonical-form”为<code>true</code>序列化一个XML 1.1文档会产生致命错误。</span>
</dd>
<dt>
<code>false</code>
</dt>
<dd>
<span>[ <em>必需</em> ] <em>默认</em> )不要规范化输出。</span>
</dd>
</dl>
</dd>
<dt>
<code>"discard-default-content"</code>
</dt>
<dd>
<dl>
<dt>
<code>true</code>
</dt>
<dd>
<span>[ <em>必需</em> ] <em>默认</em> )使用<code>Attr.specified</code>属性来决定应丢弃什么属性。</span>
<span>请注意某些实现可能会使用任何可用于实现的信息XML模式DTD <code>Attr.specified</code>属性等)来确定将此参数设置为<code>true</code>要丢弃的属性和内容。</span>
</dd>
<dt>
<code>false</code>
</dt>
<dd>
<span>[ <em>必需</em> ]保留所有属性和所有内容。</span>
</dd>
</dl>
</dd>
<dt>
<code>"format-pretty-print"</code>
</dt>
<dd>
<dl>
<dt>
<code>true</code>
</dt>
<dd>
<span>[ <em>可选</em> ]通过添加空格来生成一个漂亮的,缩进的,可读的形式来格式化输出。</span>
<span>转换的确切形式不在本规范中规定。</span>
<span>漂亮打印更改文档的内容并可能影响文档的有效性,验证的实现应保留有效性。</span>
</dd>
<dt>
<code>false</code>
</dt>
<dd>
<span>[ <em>必需</em> ] <em>默认</em> )不要漂亮打印结果。</span>
</dd>
</dl>
</dd>
<dt>
<code>"ignore-unknown-character-denormalizations"</code>
</dt>
<dd>
<dl>
<dt>
<code>true</code>
</dt>
<dd>
<span>[ <em>必需</em> ] <em>默认</em> )如果在支持[ <a href="http://www.w3.org/TR/2004/REC-xml11-20040204/">XML 1.1</a> ]时验证完整归一化,则会遇到无法确定归一化<code>"unknown-character-denormalization"</code>字符,然后引发<code>"unknown-character-denormalization"</code>警告(而不是引发错误,如果此参数未设置)并忽略由这些字符引起的任何可能的非规范化。</span>
</dd>
<dt>
<code>false</code>
</dt>
<dd>
<span>[ <em>可选</em> ]如果遇到处理器无法确定规范化属性的字符,则报告致命错误。</span>
</dd>
</dl>
</dd>
<dt>
<code>"normalize-characters"</code>
</dt>
<dd>
<span>该参数<code>DOMConfiguration</code>于[ <a href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">DOM Level 3 Core</a> ] <code>DOMConfiguration</code>定义的<code>DOMConfiguration</code></span>
<span>与Core不同此参数的默认值为<code>true</code></span>
<span>虽然不是必需的DOM的实现以支持<a href="http://www.w3.org/TR/2004/REC-xml11-20040204/#dt-fullnorm">fully normalizing个</a>根据[附录E中的文档中的字符<a href="http://www.w3.org/TR/2004/REC-xml11-20040204/">XML 1.1</a> ],该参数必须被默认激活如果支持的话。</span>
</dd>
<dt>
<code>"xml-declaration"</code>
</dt>
<dd>
<dl>
<dt>
<code>true</code>
</dt>
<dd>
<span>[ <em>需要</em> ] <em>默认</em> )如果<code>Document</code> <code>Element</code> ,或<code>Entity</code>节点被序列化XML声明或文本声明应该包括在内。</span>
<span>版本( <code>Document.xmlVersion</code>如果文档是3级文档版本不为空否则使用值“1.0”),输出编码(参见<code>LSSerializer.write</code>有关如何查找输出编码的详细信息在序列化XML声明。</span>
</dd>
<dt>
<code>false</code>
</dt>
<dd>
<span>[ <em>required</em> ]不要序列化XML和文本声明。</span>
<span>报告一个<code>"xml-declaration-needed"</code>警告,如果这将导致问题(即序列化数据是除[ <a href="http://www.w3.org/TR/2004/REC-xml-20040204">XML 1.0</a> ]之外的XML版本或者需要编码才能重新解析序列化数据</span>
</dd>
</dl>
</dd>
</dl>
</div> </li>
</ul> <a name="getNewLine--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getNewLine</h4> <pre><a href="../../../../java/lang/String.html" title="class in java.lang">String</a> getNewLine()</pre>
<div class="block">
<span>要在XML中使用的字符的行尾序列被写出。</span>
<span>支持任何字符串但是只将一组字符序列视为行尾如果序列化内容是XML 1.0或2.11节,请参阅[ <a href="http://www.w3.org/TR/2004/REC-xml-20040204">XML 1.0</a> ]中的第2.11节“终止处理”), [ <a href="http://www.w3.org/TR/2004/REC-xml11-20040204/">XML 1.1</a> ]中的“终止处理”如果序列化内容是XML 1.1)。</span>
<span>使用除推荐的字符序列之外的其他字符序列可能会导致文档不可串行化或形式不正确)。</span>
<br/>
<span>在检索时,此属性的默认值是实现特定的默认行尾序列。</span>
<span>DOM实现应选择默认值以匹配正在使用的环境中的文本文件的通常惯例。</span>
<span>实现必须根据序列化内容选择与XML 1.0或XML 1.1允许的默认序列匹配的默认序列。</span>
<span>将此属性设置为<code>null</code>将将其值重置为默认值。</span>
<br/>
</div> </li>
</ul> <a name="setNewLine-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setNewLine</h4> <pre>void setNewLine(<a href="../../../../java/lang/String.html" title="class in java.lang">String</a> newLine)</pre>
<div class="block">
<span>要在XML中使用的字符的行尾序列被写出。</span>
<span>支持任何字符串但只将一组字符序列视为行尾如果序列化的内容是XML 1.0或2.11节,请参阅[ <a href="http://www.w3.org/TR/2004/REC-xml-20040204">XML 1.0</a> ]中的第2.11节“终止处理”), [ <a href="http://www.w3.org/TR/2004/REC-xml11-20040204/">XML 1.1</a> ]中的“终止处理”如果序列化内容是XML 1.1)。</span>
<span>使用除推荐的字符序列之外的其他字符序列可能会导致文档不可串行化或形式不正确)。</span>
<br/>
<span>在检索时,此属性的默认值是实现特定的默认行尾序列。</span>
<span>DOM实现应选择默认值以匹配正在使用的环境中的文本文件的通常惯例。</span>
<span>实现必须根据序列化内容选择与XML 1.0或XML 1.1允许的默认序列匹配的默认序列。</span>
<span>将此属性设置为<code>null</code>将将其值重置为默认值。</span>
<br/>
</div> </li>
</ul> <a name="getFilter--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getFilter</h4> <pre><a href="../../../../org/w3c/dom/ls/LSSerializerFilter.html" title="interface in org.w3c.dom.ls">LSSerializerFilter</a> getFilter()</pre>
<div class="block">
<span>当应用程序提供一个过滤器时,序列化程序将在序列化每个节点之前调用过滤器。</span>
<span>过滤器实现可以选择从流中删除节点或提前终止序列化。</span>
<br/>
<span>在DOMConfiguration参数所<code>DOMConfiguration</code>操作已被应用后调用过滤器。</span>
<span>例如,如果“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-cdata-sections">cdata-sections</a> ”设置为<code>false</code> 则CDATA节将不会传递给过滤器。</span>
</div> </li>
</ul> <a name="setFilter-org.w3c.dom.ls.LSSerializerFilter-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setFilter</h4> <pre>void setFilter(<a href="../../../../org/w3c/dom/ls/LSSerializerFilter.html" title="interface in org.w3c.dom.ls">LSSerializerFilter</a> filter)</pre>
<div class="block">
<span>当应用程序提供一个过滤器时,序列化程序将在序列化每个节点之前调用过滤器。</span>
<span>过滤器实现可以选择从流中删除节点或提前终止序列化。</span>
<br/>
<span>被请求的操作后,该过滤器调用<code>DOMConfiguration</code>参数已经被应用。</span>
<span>例如,如果“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-cdata-sections">cdata-sections</a> ”设置为<code>false</code> 则CDATA节将不会传递给过滤器。</span>
</div> </li>
</ul> <a name="write-org.w3c.dom.Node-org.w3c.dom.ls.LSOutput-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>write</h4> <pre>boolean write(<a href="../../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> nodeArg,
<a href="../../../../org/w3c/dom/ls/LSOutput.html" title="interface in org.w3c.dom.ls">LSOutput</a> destination)
throws <a href="../../../../org/w3c/dom/ls/LSException.html" title="class in org.w3c.dom.ls">LSException</a></pre>
<div class="block">
<span>在LSSerializer接口的一般描述中如上所述序列化<code>LSSerializer</code>节点。</span>
<span>输出写入提供的<code>LSOutput</code></span>
<br/>
<span>当写入<code>LSOutput</code>可以通过查看通过LSOutput可以访问的编码<code>LSOutput</code>和要写入的项目(或其所有者文档)按以下顺序找到编码:</span>
<ol>
<li> <span><code>LSOutput.encoding</code> </span> </li>
<li> <span><code>Document.inputEncoding</code> </span> </li>
<li> <span><code>Document.xmlEncoding</code></span> </li>
</ol>
<br/>
<span>如果通过上述属性无法访问编码则将使用“UTF-8”的默认编码。</span>
<span>如果不支持指定的编码,则会引发“不支持编码”的致命错误。</span>
<br/>
<span>如果没有指定输出<code>LSOutput</code> ,“无输出指定的”致命错误引发。</span>
<br/>
<span>该实现负责将适当的媒体类型与序列化数据相关联。</span>
<br/>
<span>当写入HTTP URI时会执行HTTP PUT。</span>
<span>当写入其他类型的URI时将数据写入URI的机制取决于实现。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>nodeArg</code> - 要序列化的节点。
</dd>
<dd>
<code>destination</code> - 序列化DOM的目的地。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>返回<code>true</code>如果<code>node</code>成功序列化。</span>
<span>返回<code>false</code> ,以防正常处理停止,但实现继续序列化文档;</span>
<span>然后序列化的结果依赖于实现。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<span><code><a href="../../../../org/w3c/dom/ls/LSException.html" title="class in org.w3c.dom.ls">LSException</a></code> - SERIALIZE_ERR如果<code>LSSerializer</code>无法序列化节点,则引发。</span>
<span>如果DOM应用程序希望获得有关错误的详细信息 <code>DOMErrorHandler</code>使用参数“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler">error-handler</a> ”附加一个<code>DOMErrorHandler</code></span>
</dd>
</dl> </li>
</ul> <a name="writeToURI-org.w3c.dom.Node-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>writeToURI</h4> <pre>boolean writeToURI(<a href="../../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> nodeArg,
<a href="../../../../java/lang/String.html" title="class in java.lang">String</a> uri)
throws <a href="../../../../org/w3c/dom/ls/LSException.html" title="class in org.w3c.dom.ls">LSException</a></pre>
<div class="block">
充当如果一种简便方法
<code>LSSerializer.write</code>被称为具有
<code>LSOutput</code>没有编码指定和
<code>LSOutput.systemId</code>集到
<code>uri</code>参数。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>nodeArg</code> - 要序列化的节点。
</dd>
<dd>
<code>uri</code> - 要写入的URI。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>返回<code>true</code>如果<code>node</code>成功序列化。</span>
<span>返回<code>false</code> ,以防正常处理停止,但实现继续序列化文档;</span>
<span>然后序列化的结果依赖于实现。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<span><code><a href="../../../../org/w3c/dom/ls/LSException.html" title="class in org.w3c.dom.ls">LSException</a></code> - SERIALIZE_ERR如果<code>LSSerializer</code>无法序列化节点,则引发。</span>
<span>如果DOM应用程序希望获取有关错误的详细信息 <code>DOMErrorHandler</code>使用参数“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler">error-handler</a> ”附加一个<code>DOMErrorHandler</code></span>
</dd>
</dl> </li>
</ul> <a name="writeToString-org.w3c.dom.Node-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>writeToString</h4> <pre><a href="../../../../java/lang/String.html" title="class in java.lang">String</a> writeToString(<a href="../../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> nodeArg)
throws <a href="../../../../org/w3c/dom/DOMException.html" title="class in org.w3c.dom">DOMException</a>,
<a href="../../../../org/w3c/dom/ls/LSException.html" title="class in org.w3c.dom.ls">LSException</a></pre>
<div class="block">
<span>在LSSerializer接口的一般描述中如上所述序列化<code>LSSerializer</code>节点。</span>
<span>输出被写入一个返回给调用者的<code>DOMString</code></span>
<span>使用的编码是<code>DOMString</code>类型的编码即UTF-16。</span>
<span>请注意,在<code>DOMString</code>对象中不会生成字节顺序标记。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>nodeArg</code> - 要序列化的节点。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
返回序列化数据。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../../org/w3c/dom/DOMException.html" title="class in org.w3c.dom">DOMException</a></code> - DOMSTRING_SIZE_ERR如果生成的字符串太长而不适合
<code>DOMString</code>
</dd>
<dd>
<span><code><a href="../../../../org/w3c/dom/ls/LSException.html" title="class in org.w3c.dom.ls">LSException</a></code> - SERIALIZE_ERR如果<code>LSSerializer</code>无法序列化节点,则引发。</span>
<span>如果DOM应用程序希望获得有关错误的详细信息 <code>DOMErrorHandler</code>使用参数“ <a href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler">error-handler</a> ”附加<code>DOMErrorHandler</code></span>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>