モジュール java.desktop
パッケージ 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, ObjectInputStream
    • コンストラクタの詳細

      • XMLDecoder

        public XMLDecoder​(InputStream in)
        XMLEncoderクラスで作成されたアーカイブを読み取るための新しい入力ストリームを作成します。
        パラメータ:
        in - ベースとなるストリーム。
        関連項目:
        XMLEncoder(java.io.OutputStream)
      • 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 - このストリームの例外ハンドラ。またはデフォルト値を使用する場合はnull
        cl - オブジェクトのインスタンスを生成するために使用されるクラス・ローダー。nullはデフォルトのクラス・ローダーを使用することを示します
        導入されたバージョン:
        1.5
      • XMLDecoder

        public XMLDecoder​(InputSource is)
        XMLEncoderクラスで作成されたXMLアーカイブを解析するための新しいデコーダを作成します。 入力ソースのisnullである場合、例外はスローされず、解析は行われません。 この動作は、InputStreamをパラメータとして使用するその他のコンストラクタの動作と似ています。
        パラメータ:
        is - 解析する入力ソース
        導入されたバージョン:
        1.7
    • メソッドの詳細

      • close

        public void close()
        このメソッドは、このストリームに関連付けられている入力ストリームをクローズします。
        定義:
        close、インタフェース: AutoCloseable
      • setExceptionListener

        public void setExceptionListener​(ExceptionListener exceptionListener)
        このストリームの例外ハンドラをexceptionListenerに設定します。 このストリームが回復可能な例外をキャッチすると、この例外ハンドラに通知されます。
        パラメータ:
        exceptionListener - このストリームの例外ハンドラ。nullの場合は、デフォルトの例外リスナーが使用されます。
        関連項目:
        getExceptionListener()
      • getExceptionListener

        public ExceptionListener getExceptionListener()
        このストリームの例外ハンドラを取得します。
        戻り値:
        このストリームの例外ハンドラ。 明示的に設定されていない場合、デフォルトの例外リスナーが返される。
        関連項目:
        setExceptionListener(java.beans.ExceptionListener)
      • readObject

        public Object readObject()
        基本となる入力ストリームから次のオブジェクトを読み込みます。
        戻り値:
        読み込まれる次のオブジェクト
        例外:
        ArrayIndexOutOfBoundsException - ストリームに含まれるオブジェクトがない場合、またはこれ以上オブジェクトがない場合
        関連項目:
        XMLEncoder.writeObject(java.lang.Object)
      • setOwner

        public void setOwner​(Object owner)
        このデコーダの所有者をownerに設定します。
        パラメータ:
        owner - このデコーダの所有者。
        関連項目:
        getOwner()
      • getOwner

        public Object getOwner()
        このデコーダの所有者を取得します。
        戻り値:
        このデコーダの所有者。
        関連項目:
        setOwner(java.lang.Object)
      • createHandler

        public static DefaultHandler createHandler​(Object owner,
                                                   ExceptionListener el,
                                                   ClassLoader cl)
        XMLEncoderクラスで作成されたXML埋込みアーカイブの解析に使用できるSAXパーサー用の新しいハンドラを作成します。 解析するXMLドキュメントの<java>要素のコンテキスト内にメソッドの呼出しが含まれている場合は、ownerを使用してください。 そのような場合、null値を指定すると、不正な解析が行なわれる場合があります。 呼び出されることが想定されるメソッドがownerクラスに含まれていない場合、同じ問題が発生することがあります。 詳細は、 ここを参照してください。
        パラメータ:
        owner - <java>要素の値として使用できるデフォルト・ハンドラの所有者
        el - このパーサーの例外ハンドラ。またはデフォルトの例外ハンドラを使用する場合はnull
        cl - オブジェクトのインスタンスを生成するために使用されるクラス・ローダー。または、デフォルトのクラス・ローダーを使用する場合はnull
        戻り値:
        SAXパーサーのDefaultHandlerのインスタンス
        導入されたバージョン:
        1.7