JavaTM 2
Platform
Std. Ed. v1.4.0

org.xml.sax
クラス InputSource

java.lang.Object
  |
  +--org.xml.sax.InputSource

public class InputSource
extends Object

XML エンティティの単一の入力ソースです。

このモジュールは、ソースコード、文書ともに公開ドメインに置かれています。したがって、内容に関する保証は一切提供されません

SAX アプリケーションは、このクラスを利用して入力ソースに関する情報を単一のオブジェクトにカプセル化します。このオブジェクトには、公開識別子、システム識別子、バイトストリーム (エンコーディングが指定されている場合もある)、文字ストリームなどが含まれます。

アプリケーションは、この入力ソースを Parser.parse メソッドの引数として、あるいは EntityResolver.resolveEntity メソッドの戻り値としてパーサに渡します。

SAX パーサは、この InputSource オブジェクトを使って XML 入力の読み込みの方法を決定します。パーサは、文字ストリームが使用できればこれを直接読み込み、使用できなければバイトストリームを使用します。文字ストリームもバイトストリームも使用できない場合は、システム識別子で示されたリソースへの URI 接続を開始しようとします。

InputSource オブジェクトはアプリケーションに所属するため、これを SAX パーサが変更することはできません。ただし、必要に応じてコピーすることは可能です。

導入されたバージョン:
SAX 1.0
関連項目:
Parser.parse(org.xml.sax.InputSource), EntityResolver.resolveEntity(java.lang.String, java.lang.String), InputStream, Reader

コンストラクタの概要
InputSource()
          デフォルトの引数なしのコンストラクタ
InputSource(InputStream byteStream)
          バイトストリームを指定して新しい入力ソースを作成します。
InputSource(Reader characterStream)
          文字ストリームを指定して新しい入力ソースを作成します。
InputSource(String systemId)
          システム識別子を指定して新しい入力ソースを作成します。
 
メソッドの概要
 InputStream getByteStream()
          この入力ソースのバイトストリームを取得します。
 Reader getCharacterStream()
          この入力ソースの文字ストリームを取得します。
 String getEncoding()
          バイトストリームまたは URI の文字セットを取得します。
 String getPublicId()
          この入力ソースの公開識別子を取得します。
 String getSystemId()
          この入力ソースのシステム識別子を取得します。
 void setByteStream(InputStream byteStream)
          この入力ソースのバイトストリームを設定します。
 void setCharacterStream(Reader characterStream)
          この入力ソースの文字ストリームを設定します。
 void setEncoding(String encoding)
          文字セットがわかっている場合、これを設定します。
 void setPublicId(String publicId)
          この入力ソースの公開識別子を設定します。
 void setSystemId(String systemId)
          この入力ソースのシステム識別子を設定します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

InputSource

public InputSource()
デフォルトの引数なしのコンストラクタ

関連項目:
setPublicId(java.lang.String), setSystemId(java.lang.String), setByteStream(java.io.InputStream), setCharacterStream(java.io.Reader), setEncoding(java.lang.String)

InputSource

public InputSource(String systemId)
システム識別子を指定して新しい入力ソースを作成します。

setPublicId を使って、アプリケーションに公開識別子を含めることもできます。setEncoding を使って既知の文字セットを指定することもできます。

システム識別子が URL である場合、完全に解決する必要があります。

パラメータ:
systemId - システム識別子 (URI)
関連項目:
setPublicId(java.lang.String), setSystemId(java.lang.String), setByteStream(java.io.InputStream), setEncoding(java.lang.String), setCharacterStream(java.io.Reader)

InputSource

public InputSource(InputStream byteStream)
バイトストリームを指定して新しい入力ソースを作成します。

アプリケーションの作成者は、setSystemId を使って関連 URI のベースを提供することができます。SetPublicId を使ってアプリケーションに公開識別子を含めたり、setEncoding を使ってオブジェクトの文字セットを指定することもできます。

パラメータ:
byteStream - 文書を含む raw バイトストリーム
関連項目:
setPublicId(java.lang.String), setSystemId(java.lang.String), setEncoding(java.lang.String), setByteStream(java.io.InputStream), setCharacterStream(java.io.Reader)

InputSource

public InputSource(Reader characterStream)
文字ストリームを指定して新しい入力ソースを作成します。

アプリケーションの作成者は、setSystemId() を使って、関連 URI を解決するためのベースを提供できます。また、setPublicId を使ってアプリケーションに公開識別子を含めることができます。

バイト順序記号は文字ストリームに含まれません。

関連項目:
setPublicId(java.lang.String), setSystemId(java.lang.String), setByteStream(java.io.InputStream), setCharacterStream(java.io.Reader)
メソッドの詳細

setPublicId

public void setPublicId(String publicId)
この入力ソースの公開識別子を設定します。

公開識別子は常にオプションです。アプリケーションに公開識別子を含めたい場合は、位置情報の一部として指定します。

パラメータ:
publicId - 公開識別子を示す文字列
関連項目:
getPublicId(), Locator.getPublicId(), SAXParseException.getPublicId()

getPublicId

public String getPublicId()
この入力ソースの公開識別子を取得します。

戻り値:
公開識別子。提供されなかった場合は null
関連項目:
setPublicId(java.lang.String)

setSystemId

public void setSystemId(String systemId)
この入力ソースのシステム識別子を設定します。

バイトストリームや文字ストリームが存在する場合、システム識別子はオプションです。しかし、アプリケーションにシステム識別子が含まれていれば、関連 URI を解決したりエラーメッセージや警告にこのシステム識別子を含めることができるという利点があります。なお、パーサは、バイトストリームや文字ストリームが指定されていない場合にかぎり URI への接続を開始しようとします。

システム識別子が示すオブジェクトの文字セットがわかっている場合、アプリケーションは setEncoding メソッドを使ってこのエンコーディングを登録できます。

システム ID が URL である場合、完全に解決する必要があります。

パラメータ:
systemId - システム識別子を示す文字列
関連項目:
setEncoding(java.lang.String), getSystemId(), Locator.getSystemId(), SAXParseException.getSystemId()

getSystemId

public String getSystemId()
この入力ソースのシステム識別子を取得します。

getEncoding メソッドは、このシステム識別子が示すオブジェクトの文字セットを返します。不明な場合は null を返します。

システム ID が URL である場合、完全に解決されます。

戻り値:
システム識別子
関連項目:
setSystemId(java.lang.String), getEncoding()

setByteStream

public void setByteStream(InputStream byteStream)
この入力ソースのバイトストリームを設定します。

SAX パーサは、バイトストリームのほかに文字ストリームが指定されている場合、バイトストリームを無視します。バイトストリームは、URI 接続を開始するより優先的に使用されます。

バイトストリームの文字セットがわかっている場合、アプリケーションは setEncoding メソッドを使ってこのエンコーディングを設定する必要があります。

パラメータ:
byteStream - XML 文書またはその他のエンティティを含むバイトストリーム
関連項目:
setEncoding(java.lang.String), getByteStream(), getEncoding(), InputStream

getByteStream

public InputStream getByteStream()
この入力ソースのバイトストリームを取得します。

getEncoding メソッドは、このバイトストリームの文字セットを返します。不明な場合は null を返します。

戻り値:
バイトストリーム。提供されなかった場合は null
関連項目:
getEncoding(), setByteStream(java.io.InputStream)

setEncoding

public void setEncoding(String encoding)
文字セットがわかっている場合、これを設定します。

エンコーディングは、XML エンコーディング宣言 (XML 1.0 勧告のセクション 4.3.3 を参照) の規定に合った文字列でなければなりません。

アプリケーションが文字ストリームを提供する場合、このメソッドには何の効果もありません。

パラメータ:
encoding - 文字セットを説明する文字列
関連項目:
setSystemId(java.lang.String), setByteStream(java.io.InputStream), getEncoding()

getEncoding

public String getEncoding()
バイトストリームまたは URI の文字セットを取得します。

戻り値:
エンコーディング。提供されなかった場合は null
関連項目:
setByteStream(java.io.InputStream), getSystemId(), getByteStream()

setCharacterStream

public void setCharacterStream(Reader characterStream)
この入力ソースの文字ストリームを設定します。

文字ストリームが指定されている場合、SAX パーサはバイトストリームを無視し、また、システム識別子への URI 接続を開始しません。

パラメータ:
characterStream - XML 文書またはその他のエンティティを含む文字ストリーム
関連項目:
getCharacterStream(), Reader

getCharacterStream

public Reader getCharacterStream()
この入力ソースの文字ストリームを取得します。

戻り値:
文字ストリーム。提供されなかった場合は null
関連項目:
setCharacterStream(java.io.Reader)

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.