public interface XMLStreamWriter
XMLStreamWriterインタフェースはXMLの書込み方法を指定します。 XMLStreamWriterは入力に対しては整形式を確認しません。 ただし、&、< and >をエスケープするにはwriteCharactersメソッドが必要です。属性値の場合、writeAttributeメソッドは前述の文字と"をエスケープして、すべての文字コンテンツと属性値が適切に形成されるようにします。 それぞれのNAMESPACEとATTRIBUTEは、個別に書き込まれる必要があります。
ノート:
| メソッド | isRepairingNamespaces == true |
isRepairingNamespaces == false |
||
|---|---|---|---|---|
| namespaceURIバインドあり | namespaceURIバインドなし | namespaceURIバインドあり | namespaceURIバインドなし | |
writeAttribute(namespaceURI, localName, value) |
prefix:localName="value" [1] | xmlns:{generated}="namespaceURI" {generated}:localName="value" | prefix:localName="value" [1] |
XMLStreamException
|
writeAttribute(prefix, namespaceURI, localName, value) |
同じ接頭辞にバインド: prefix:localName="value" [1] 異なる接頭辞にバインド: xmlns:{generated}="namespaceURI" {generated}:localName="value" |
xmlns:prefix="namespaceURI" prefix:localName="value" [3] |
同じ接頭辞にバインド: prefix:localName="value" [1][2] 異なる接頭辞にバインド: XMLStreamException[2]
|
xmlns:prefix="namespaceURI" prefix:localName="value" [2][5] |
writeStartElement(namespaceURI, localName)writeEmptyElement(namespaceURI, localName) |
<prefix:localName> [1]
|
<{generated}:localName xmlns:{generated}="namespaceURI">
|
prefix:localName> [1]
|
XMLStreamException
|
writeStartElement(prefix, localName, namespaceURI)writeEmptyElement(prefix, localName, namespaceURI) |
同じプレフィクスにバインドされています:<prefix:localName>[1]別のプレフィクスにバインドされています: <{generated}:localName xmlns:{generated}="namespaceURI">
|
<prefix:localName xmlns:prefix="namespaceURI"> [4]
|
同じプレフィクスにバインドされています:<prefix:localName>[1]別のプレフィクスにバインドされています: XMLStreamException
|
<prefix:localName>
|
- [1] namespaceURIがデフォルトの名前空間URIと等しい場合、接頭辞は書き込まれません
- [2]プレフィクス == ""|| null && namespaceURI ==""の場合、プレフィクスまたは名前空間宣言は生成されないか、記述されません。
- [3] prefix == ""||nullの場合、接頭辞はランダムに生成されます
- [4] prefix == ""||nullの場合、デフォルトの名前空間として処理され、接頭辞は生成または書き込みされません。また、namespaceURIがバインドされていない場合は、xmlns宣言が生成または書き込みされます
- [5] prefix == ""||nullの場合、デフォルトの名前空間の定義が無効であるとして処理され、XMLStreamExceptionがスローされます
- 導入されたバージョン:
- 1.6
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明voidclose()このライターを閉じて、ライターに関連付けられているリソースをすべて解放します。voidflush()キャッシュに格納されたすべてのデータを、ベースとなる出力メカニズムに書き込みます。現在の名前空間コンテキストを返します。URIのバインド先の接頭辞を取得します。getProperty(String name) ベースとなる実装から機能またはプロパティの値を取得します。voidURIをデフォルトの名前空間にバインドします。このURIは、現在のSTART_ELEMENTとEND_ELEMENTのペアの範囲にバインドされます。voidsetNamespaceContext(NamespaceContext context) 接頭辞とURIのバインドに対して、現在の名前空間コンテキストを設定します。voidURIのバインド先の接頭辞を設定します。voidwriteAttribute(String localName, String value) 属性を出力ストリームに書き込みます。接頭辞は書き込まれません。voidwriteAttribute(String namespaceURI, String localName, String value) 属性を出力ストリームに書き込みます。voidwriteAttribute(String prefix, String namespaceURI, String localName, String value) 属性を出力ストリームに書き込みます。voidwriteCData(String data) CDataセクションを書き込みます。voidwriteCharacters(char[] text, int start, int len) 出力にテキストを書き込みます。voidwriteCharacters(String text) 出力にテキストを書き込みます。voidwriteComment(String data) コメント・アウトされたデータを使用してXMLコメントを書き込みます。voidwriteDefaultNamespace(String namespaceURI) 出力ストリームにデフォルトの名前空間を書き込みます。voidDTDセクションを書き込みます。voidwriteEmptyElement(String localName) 出力に空の要素タグを書き込みます。voidwriteEmptyElement(String namespaceURI, String localName) 出力に空の要素タグを書き込みます。voidwriteEmptyElement(String prefix, String localName, String namespaceURI) 出力に空の要素タグを書き込みます。voidすべての開始タグを閉じて、対応する終了タグを書き込みます。void出力に終了タグを書き込みます。イベントの接頭辞とローカル名の判別はライターの内部状態に依存します。voidwriteEntityRef(String name) エンティティ参照を書き込みます。voidwriteNamespace(String prefix, String namespaceURI) 出力ストリームに名前空間を書き込みます。このメソッドの接頭辞引数が空の文字列、「xmlns」、またはnullの場合、このメソッドはwriteDefaultNamespaceに委譲します。voidwriteProcessingInstruction(String target) 処理命令を書き込みます。voidwriteProcessingInstruction(String target, String data) 処理命令を書き込みます。voidXML宣言を書き込みます。voidwriteStartDocument(String version) XML宣言を書き込みます。voidwriteStartDocument(String encoding, String version) XML宣言を書き込みます。voidwriteStartElement(String localName) 出力に開始タグを書き込みます。voidwriteStartElement(String namespaceURI, String localName) 出力に開始タグを書き込みます。voidwriteStartElement(String prefix, String localName, String namespaceURI) 出力に開始タグを書き込みます。
-
メソッドの詳細
-
writeStartElement
void writeStartElement(String localName) throws XMLStreamException 出力に開始タグを書き込みます。 すべてのwriteStartElementメソッドによって、内部名前空間コンテキストに新しい範囲が開かれます。 対応するEndElementを書き込むと、それらの範囲が閉じられます。- パラメータ:
localName- タグのローカル名(null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
writeStartElement
void writeStartElement(String namespaceURI, String localName) throws XMLStreamException 出力に開始タグを書き込みます。- パラメータ:
namespaceURI- 使用する接頭辞のnamespaceURI (null以外)localName- タグのローカル名(null以外)- スロー:
XMLStreamException- 名前空間URIが接頭辞にバインドされておらず、javax.xml.stream.isRepairingNamespacesがtrueに設定されていない場合
-
writeStartElement
void writeStartElement(String prefix, String localName, String namespaceURI) throws XMLStreamException 出力に開始タグを書き込みます。- パラメータ:
prefix- タグの接頭辞(null以外)localName- タグのローカル名(null以外)namespaceURI- 接頭辞のバインド先URI (null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
writeEmptyElement
void writeEmptyElement(String namespaceURI, String localName) throws XMLStreamException 出力に空の要素タグを書き込みます。- パラメータ:
namespaceURI- タグのバインド先URI (null以外)localName- タグのローカル名(null以外)- スロー:
XMLStreamException- 名前空間URIが接頭辞にバインドされておらず、javax.xml.stream.isRepairingNamespacesがtrueに設定されていない場合
-
writeEmptyElement
void writeEmptyElement(String prefix, String localName, String namespaceURI) throws XMLStreamException 出力に空の要素タグを書き込みます。- パラメータ:
prefix- タグの接頭辞(null以外)localName- タグのローカル名(null以外)namespaceURI- タグのバインド先URI (null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
writeEmptyElement
void writeEmptyElement(String localName) throws XMLStreamException 出力に空の要素タグを書き込みます。- パラメータ:
localName- タグのローカル名(null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
writeEndElement
void writeEndElement() throws XMLStreamException出力に終了タグを書き込みます。イベントの接頭辞とローカル名の判別はライターの内部状態に依存します。- スロー:
XMLStreamException- エラーが発生した場合
-
writeEndDocument
void writeEndDocument() throws XMLStreamExceptionすべての開始タグを閉じて、対応する終了タグを書き込みます。- スロー:
XMLStreamException- エラーが発生した場合
-
close
void close() throws XMLStreamExceptionこのライターを閉じて、ライターに関連付けられているリソースをすべて解放します。 ベースとなる出力ストリームが閉じることはありません。- スロー:
XMLStreamException- エラーが発生した場合
-
flush
void flush() throws XMLStreamExceptionキャッシュに格納されたすべてのデータを、ベースとなる出力メカニズムに書き込みます。- スロー:
XMLStreamException- エラーが発生した場合
-
writeAttribute
void writeAttribute(String localName, String value) throws XMLStreamException 属性を出力ストリームに書き込みます。接頭辞は書き込まれません。- パラメータ:
localName- 属性のローカル名value- 属性の値- スロー:
IllegalStateException- 現在の状態が属性の書込みを許可しない場合XMLStreamException- エラーが発生した場合
-
writeAttribute
void writeAttribute(String prefix, String namespaceURI, String localName, String value) throws XMLStreamException 属性を出力ストリームに書き込みます。- パラメータ:
prefix- この属性の接頭辞namespaceURI- この属性の接頭辞のURIlocalName- 属性のローカル名value- 属性の値- スロー:
IllegalStateException- 現在の状態が属性の書込みを許可しない場合XMLStreamException- 名前空間URIが接頭辞にバインドされておらず、javax.xml.stream.isRepairingNamespacesがtrueに設定されていない場合
-
writeAttribute
void writeAttribute(String namespaceURI, String localName, String value) throws XMLStreamException 属性を出力ストリームに書き込みます。- パラメータ:
namespaceURI- この属性の接頭辞のURIlocalName- 属性のローカル名value- 属性の値- スロー:
IllegalStateException- 現在の状態が属性の書込みを許可しない場合XMLStreamException- 名前空間URIが接頭辞にバインドされておらず、javax.xml.stream.isRepairingNamespacesがtrueに設定されていない場合
-
writeNamespace
void writeNamespace(String prefix, String namespaceURI) throws XMLStreamException 出力ストリームに名前空間を書き込みます。このメソッドの接頭辞引数が空の文字列、「xmlns」、またはnullの場合、このメソッドはwriteDefaultNamespaceに委譲します。- パラメータ:
prefix- この名前空間のバインド先の接頭辞namespaceURI- 接頭辞のバインド先URI- スロー:
IllegalStateException- 現在の状態が名前空間の書込みを許可しない場合XMLStreamException- エラーが発生した場合
-
writeDefaultNamespace
void writeDefaultNamespace(String namespaceURI) throws XMLStreamException 出力ストリームにデフォルトの名前空間を書き込みます。- パラメータ:
namespaceURI- デフォルトの名前空間のバインド先URI- スロー:
IllegalStateException- 現在の状態が名前空間の書込みを許可しない場合XMLStreamException- エラーが発生した場合
-
writeComment
void writeComment(String data) throws XMLStreamException コメント・アウトされたデータを使用してXMLコメントを書き込みます。- パラメータ:
data- コメントに含まれるデータ(nullの場合もある)- スロー:
XMLStreamException- エラーが発生した場合
-
writeProcessingInstruction
void writeProcessingInstruction(String target) throws XMLStreamException 処理命令を書き込みます。- パラメータ:
target- 処理命令のターゲット(null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
writeProcessingInstruction
void writeProcessingInstruction(String target, String data) throws XMLStreamException 処理命令を書き込みます。- パラメータ:
target- 処理命令のターゲット(null以外)data- 処理命令に含まれるデータ(null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
writeCData
void writeCData(String data) throws XMLStreamException CDataセクションを書き込みます。- パラメータ:
data- CDataセクションに含まれるデータ(null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
writeDTD
void writeDTD(String dtd) throws XMLStreamException DTDセクションを書き込みます。 この文字列は、XML 1.0仕様のdoctypedecl生成規則全体を表します。- パラメータ:
dtd- 書き込まれるDTD- スロー:
XMLStreamException- エラーが発生した場合
-
writeEntityRef
void writeEntityRef(String name) throws XMLStreamException エンティティ参照を書き込みます。- パラメータ:
name- エンティティの名前- スロー:
XMLStreamException- エラーが発生した場合
-
writeStartDocument
void writeStartDocument() throws XMLStreamExceptionXML宣言を書き込みます。 XMLバージョンを1.0に、エンコーディングをutf-8にデフォルト設定します。- スロー:
XMLStreamException- エラーが発生した場合
-
writeStartDocument
void writeStartDocument(String version) throws XMLStreamException XML宣言を書き込みます。 XMLバージョンを1.0にデフォルト設定します。- パラメータ:
version- XMLドキュメントのバージョン- スロー:
XMLStreamException- エラーが発生した場合
-
writeStartDocument
void writeStartDocument(String encoding, String version) throws XMLStreamException XML宣言を書き込みます。 エンコーディング・パラメータでは、ベースとなる出力の実際のエンコーディングは設定しません。 実際のエンコーディングは、XMLOutputFactoryを使用してXMLStreamWriterのインスタンスを作成するときに設定する必要があります。- パラメータ:
encoding- XML宣言のエンコーディングversion- XMLドキュメントのバージョン- スロー:
XMLStreamException- 指定されたエンコーディングがベースとなるストリームのエンコーディングと一致しない場合
-
writeCharacters
void writeCharacters(String text) throws XMLStreamException 出力にテキストを書き込みます。- パラメータ:
text- 書き込む値- スロー:
XMLStreamException- エラーが発生した場合
-
writeCharacters
void writeCharacters(char[] text, int start, int len) throws XMLStreamException 出力にテキストを書き込みます。- パラメータ:
text- 書き込む値start- 配列内の開始位置len- 書き込む文字数- スロー:
XMLStreamException- エラーが発生した場合
-
getPrefix
URIのバインド先の接頭辞を取得します。- パラメータ:
uri- プレフィクスがバインドされるURI- 戻り値:
- 接頭辞またはnull
- スロー:
XMLStreamException- エラーが発生した場合
-
setPrefix
void setPrefix(String prefix, String uri) throws XMLStreamException URIのバインド先の接頭辞を設定します。 この接頭辞は、現在のSTART_ELEMENTとEND_ELEMENTのペアの範囲にバインドされます。 START_ELEMENTが書き込まれる前にこのメソッドが呼び出されると、接頭辞はルートの範囲にバインドされます。- パラメータ:
prefix- URIにバインドする接頭辞(null以外)uri- 接頭辞にバインドするURI (nullの場合もある)- スロー:
XMLStreamException- エラーが発生した場合
-
setDefaultNamespace
void setDefaultNamespace(String uri) throws XMLStreamException URIをデフォルトの名前空間にバインドします。このURIは、現在のSTART_ELEMENTとEND_ELEMENTのペアの範囲にバインドされます。 START_ELEMENTが書き込まれる前にこのメソッドが呼び出されると、URIはルートのスコープにバインドされます。- パラメータ:
uri- デフォルトの名前空間にバインドするURI (nullの場合もある)- スロー:
XMLStreamException- エラーが発生した場合
-
setNamespaceContext
void setNamespaceContext(NamespaceContext context) throws XMLStreamException 接頭辞とURIのバインドに対して、現在の名前空間コンテキストを設定します。 このコンテキストは書込みに使用するルートの名前空間コンテキストになります。また、現在のルートの名前空間コンテキストを置き換えます。 後続のsetPrefixおよびsetDefaultNamespaceの呼出しでは、名前空間の解決用にルート・コンテキストとしてメソッドに渡されたコンテキストを使用して名前空間がバインドされます。 このメソッドは、ドキュメントの初めに一度だけ呼び出すことができます。 この操作によって名前空間は宣言されません。 名前空間URIと接頭辞のマッピングが名前空間コンテキストに見つかった場合、このマッピングは宣言されたものとして処理され、接頭辞をStreamWriterで使用できます。- パラメータ:
context- このライターで使用する名前空間コンテキスト(null以外)- スロー:
XMLStreamException- エラーが発生した場合
-
getNamespaceContext
NamespaceContext getNamespaceContext()現在の名前空間コンテキストを返します。- 戻り値:
- 現在のNamespaceContext
-
getProperty
ベースとなる実装から機能またはプロパティの値を取得します。- パラメータ:
name- プロパティの名前(null以外)- 戻り値:
- プロパティの値
- スロー:
IllegalArgumentException- プロパティがサポートされていない場合NullPointerException- 名前がnullである場合
-