クラスXMLDecoder
java.lang.Object
java.beans.XMLDecoder
- すべての実装されたインタフェース:
AutoCloseable
public class XMLDecoder extends Object implements AutoCloseable
XMLDecoderクラスは、XMLEncoderを使って作成されたXMLドキュメントの読取りに使用され、ObjectInputStreamと同様に使用されます。 たとえば、次のコードでは、XMLEncoderクラスで作成されたXML文書に定義されている最初のオブジェクトを読み取ることができます。
XMLDecoder d = new XMLDecoder(
new BufferedInputStream(
new FileInputStream("Test.xml")));
Object result = d.readObject();
d.close();
詳細は、「The Swing Connection」の「 Long Term Persistence of JavaBeans Components: XML Schema」を参照してください。
- 導入されたバージョン:
- 1.4
- 関連項目:
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。XMLDecoder(InputStream in, Object owner) XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener) XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener, ClassLoader cl) XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。XMLEncoderクラスで作成されたXMLアーカイブを解析するための新しいデコーダを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明voidclose()このメソッドは、このストリームに関連付けられている入力ストリームをクローズします。static DefaultHandlercreateHandler(Object owner, ExceptionListener el, ClassLoader cl) XMLEncoderクラスで作成されたXML埋込みアーカイブの解析に使用できるSAXパーサー用の新しいハンドラを作成します。このストリームの例外ハンドラを取得します。getOwner()このデコーダの所有者を取得します。ベースとなる入力ストリームから次のオブジェクトを読み込みます。voidsetExceptionListener(ExceptionListener exceptionListener) このストリームの例外ハンドラをexceptionListenerに設定します。voidこのデコーダの所有者をownerに設定します。
-
コンストラクタの詳細
-
XMLDecoder
public XMLDecoder(InputStream in) XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。- パラメータ:
in- ベースとなるストリーム。- 関連項目:
-
XMLDecoder
public XMLDecoder(InputStream in, Object owner) XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。- パラメータ:
in- ベースとなるストリーム。owner- このストリームの所有者。
-
XMLDecoder
public XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener) XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。- パラメータ:
in- ベースとなるストリーム。owner- このストリームの所有者。exceptionListener- このストリームの例外ハンドラ。nullの場合は、デフォルトの例外リスナーが使用されます。
-
XMLDecoder
public XMLDecoder(InputStream in, Object owner, ExceptionListener exceptionListener, ClassLoader cl) XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。- パラメータ:
in- ベースとなるストリーム。エラーなしでnullが渡されることがあるが、得られるXMLDecoderは無効ですowner- このストリームの所有者。nullは正当な値ですexceptionListener- このストリームの例外ハンドラ。またはデフォルト値を使用する場合はnullcl- オブジェクトのインスタンスを生成するために使用されるクラス・ローダー。nullはデフォルトのクラス・ローダーを使用することを示します- 導入されたバージョン:
- 1.5
-
XMLDecoder
public XMLDecoder(InputSource is) XMLEncoderクラスで作成されたXMLアーカイブを解析するための新しいデコーダを作成します。 入力ソースのisがnullである場合、例外はスローされず、解析は行われません。 この動作は、InputStreamをパラメータとして使用するその他のコンストラクタの動作と似ています。- パラメータ:
is- 解析する入力ソース- 導入されたバージョン:
- 1.7
-
-
メソッドの詳細
-
close
-
setExceptionListener
public void setExceptionListener(ExceptionListener exceptionListener) このストリームの例外ハンドラをexceptionListenerに設定します。 このストリームが回復可能な例外をキャッチすると、この例外ハンドラに通知されます。- パラメータ:
exceptionListener- このストリームの例外ハンドラ。nullの場合は、デフォルトの例外リスナーが使用されます。- 関連項目:
-
getExceptionListener
public ExceptionListener getExceptionListener()このストリームの例外ハンドラを取得します。- 戻り値:
- このストリームの例外ハンドラ。 明示的に設定されていない場合、デフォルトの例外リスナーが返される。
- 関連項目:
-
readObject
public Object readObject()ベースとなる入力ストリームから次のオブジェクトを読み込みます。- 戻り値:
- 読み込まれる次のオブジェクト
- スロー:
ArrayIndexOutOfBoundsException- ストリームに含まれるオブジェクトがない場合、またはこれ以上オブジェクトがない場合- 関連項目:
-
setOwner
-
getOwner
-
createHandler
public static DefaultHandler createHandler(Object owner, ExceptionListener el, ClassLoader cl) XMLEncoderクラスで作成されたXML埋込みアーカイブの解析に使用できるSAXパーサー用の新しいハンドラを作成します。 解析するXMLドキュメントの<java>要素のコンテキスト内にメソッドの呼出しが含まれている場合は、ownerを使用してください。 そのような場合、null値を指定すると、不正な解析が行なわれる場合があります。 呼び出されることが想定されるメソッドがownerクラスに含まれていない場合、同じ問題が発生することがあります。 詳細は、 ここを参照してください。- パラメータ:
owner- <java>要素の値として使用できるデフォルト・ハンドラの所有者el- このパーサーの例外ハンドラ。またはデフォルトの例外ハンドラを使用する場合はnullcl- オブジェクトのインスタンスを生成するために使用されるクラス・ローダー。または、デフォルトのクラス・ローダーを使用する場合はnull- 戻り値:
- SAXパーサーの
DefaultHandlerのインスタンス - 導入されたバージョン:
- 1.7
-