Oracle® Data Provider for .NET開発者ガイド ODAC 12c リリース4 (12.1.0.2) for Microsoft Windows E72575-01 |
|
前 |
次 |
OracleXmlStream
オブジェクトは、OracleXmlType
オブジェクトに格納されているXMLデータの読取り専用ストリームを表します。
クラスの継承
System.Object
System.MarshalByRefObject
System.Stream
System.OracleXmlStream
宣言
// C# public sealed class OracleXmlStream : IDisposable, ICloneable
要件
プロバイダ | ODP.NET管理対象外ドライバ | ODP.NET管理対象ドライバ |
アセンブリ | Oracle.DataAccess.dll |
Oracle.ManagedDataAccess.dll |
ネームスペース | Oracle.DataAccess.Types |
Oracle.ManagedDataAccess.Client |
.NET Framework | 3.5, 4.0, 4.5, 4.6 | 4.0, 4.5, 4.6 |
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
次の表に、OracleXmlStream
メンバーを示します。
OracleXmlStreamコンストラクタ
OracleXmlStream
コンストラクタを、表7-12にリストします。
表7-12 OracleXmlStreamコンストラクタ
コンストラクタ | 説明 |
---|---|
|
OracleXmlStream静的メソッド
OracleXmlStream
静的メソッドを、表7-13にリストします。
OracleXmlStreamインスタンス・プロパティ
OracleXmlStream
インスタンス・プロパティを、表7-14にリストします。
表7-14 OracleXmlStreamインスタンス・プロパティ
プロパティ | 説明 |
---|---|
XMLストリームが読取り可能かどうかを示します |
|
順方向および逆方向検索操作が実行可能かどうかを示します |
|
CanWrite |
サポート対象外 |
XMLデータの取得に使用する |
|
XMLストリーム内のバイト数を示します。 |
|
ストリーム内のバイト位置を取得または設定します。 |
|
ストリームの最初の文字を起点とする文字列としてXMLデータを戻します。 |
OracleXmlStreamインスタンス・メソッド
OracleXmlStream
インスタンス・メソッドを、表7-15にリストします。
表7-15 OracleXmlStreamインスタンス・メソッド
メソッド | 説明 |
---|---|
|
|
|
|
|
|
現行のストリームをクローズし、それに関連するリソースを解除します |
|
このオブジェクトによって割り当てられたリソースを解除します |
|
|
|
|
|
|
|
|
サポート対象外 |
|
|
|
|
|
|
|
|
現行のストリーム・インスタンスから指定された数量を読み取り、配列バッファに移入します(オーバーロード) |
|
|
|
現行ストリーム内の位置を設定し、現行ストリーム内の新しい位置を戻します。 |
|
|
サポート対象外 |
|
|
|
サポート対象外 |
|
サポート対象外 |
|
サポート対象外 |
このコンストラクタは、OracleXmlType
オブジェクト内に格納されたXMLデータのStream
表現を提供する、OracleXmlStream
オブジェクトのインスタンスを作成します。
宣言
// C#
public OracleXmlStream(OracleXmlType xmlType);
パラメータ
xmlType
OracleXmlType
オブジェクト。
備考
OracleXmlStream
オブジェクトは、構築元であるOracleXmlType
オブジェクトからのOracleConnection
オブジェクトを暗黙的に使用します。
OracleXmlStream
インスタンス・プロパティを、表7-17にリストします。
表7-17 OracleXmlStreamインスタンス・プロパティ
プロパティ | 説明 |
---|---|
XMLストリームが読取り可能かどうかを示します |
|
順方向および逆方向検索操作が実行可能かどうかを示します |
|
|
サポート対象外 |
XMLデータの取得に使用する |
|
XMLストリーム内のバイト数を示します。 |
|
ストリーム内のバイト位置を取得または設定します。 |
|
ストリームの最初の文字を起点とする文字列としてXMLデータを戻します。 |
Stream
をオーバーライドします
このプロパティは、XMLストリームが読取り可能であるかどうかを示します。
宣言
// C# public override bool CanRead{get;}
プロパティ値
XMLストリームが読取り可能である場合はtrue
を戻し、それ以外の場合はfalse
を戻します。
Stream
をオーバーライドします
このプロパティでは、順方向および逆方向シーク操作が実行可能かどうかを示します。
宣言
// C# public override bool CanSeek{get;}
プロパティ値
順方向および逆方向シーク操作が実行可能の場合、このプロパティはtrue
を戻し、それ以外の場合はfalse
を戻します。
このインスタンス・プロパティでは、XMLデータの取得に使用するOracleConnection
を示します。
宣言
// C# public OracleConnection Connection {get;}
プロパティ値
OracleConnection
。
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
Stream
をオーバーライドします
このプロパティでは、XMLストリーム内のバイト数を示します。
宣言
// C# public override Int64 Length{get;}
プロパティ値
XMLストリーム内のバイト数を表すInt64
値。空のストリームの長さは0バイトです。
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
InvalidOperationException
- OracleConnection
がオープンされていないか、またはオブジェクトの存続中にクローズされています。
Stream
をオーバーライドします
このプロパティではストリーム内のバイト位置を取得または設定します。
宣言
// C# public override Int64 Position{get; set;}
プロパティ値
ストリーム内の現行の位置を示すInt64
。
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
InvalidOperationException
- OracleConnection
がオープンされていないか、またはオブジェクトの存続中にクローズされています。
ArgumentOutOfRangeException
- Position
は0未満です。
備考
ストリームの開始は、位置0
で表します。ストリーム長を超えた任意の位置の検索がサポートされています。
このプロパティではストリームの最初の文字を起点とする文字列としてXMLデータを戻します。
宣言
// C# public string Value{get; set;}
プロパティ値
string
。
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
InvalidOperationException
- OracleConnection
がオープンされていないか、またはオブジェクトの存続中にクローズされています。
備考
このプロパティの使用により、Position
の値が使用または変更されることはありません。
このプロパティが戻すことができる文字列の最大長は2GBです。
OracleXmlStream
インスタンス・メソッドを、表7-18にリストします。
表7-18 OracleXmlStreamインスタンス・メソッド
メソッド | 説明 |
---|---|
|
|
|
|
|
|
現行のストリームをクローズし、それに関連するリソースを解除します |
|
このオブジェクトによって割り当てられたリソースを解除します |
|
|
|
|
|
|
|
|
サポート対象外 |
|
|
|
|
|
|
|
|
現行XMLストリーム・インスタンスから指定された数量を読み取り、配列バッファに移入します(オーバーロード) |
|
|
|
現行ストリーム内の位置を設定し、現行ストリーム内の新しい位置を戻します。 |
|
|
サポート対象外 |
|
|
|
サポート対象外 |
|
サポート対象外 |
|
サポート対象外 |
このメソッドでは、OracleXmlStream
オブジェクトのコピーを作成します。
宣言
// C# public object Clone();
戻り値
OracleXmlStream
オブジェクト。
実装
ICloneable
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
InvalidOperationException
- OracleConnection
がオープンされていないか、またはオブジェクトの存続中にクローズされています。
備考
複製されたオブジェクトのプロパティ値は、複製元のオブジェクトのプロパティ値と同じです。
Stream
をオーバーライドします
このメソッドは現行のストリームをクローズし、それに関連するあらゆるリソースを解放します。
宣言
// C# public override void Close();
このパブリック・メソッドでは、このオブジェクトによって割り当てられたリソースを解除します。
宣言
// C# public void Dispose();
実装
IDisposable
備考
オブジェクトは、処理後は再度使用できません。一部のプロパティには継続してアクセスできますが、その値は適切ではありません。リソースが解放されているため、メソッドのコールにより例外が発生することがあります。
このメソッドは、現行XMLストリーム・インスタンスから指定数を読み取り、配列バッファに移入します。
オーバーロード・リスト:
このメソッドでは、現行のインスタンスから指定されたユニコードのバイト数を読み取り、ストリーム内の位置を進め、バイト配列バッファに移入します。
このメソッドでは、現行のインスタンスから指定された文字数を読み取り、ストリーム内の位置を進め、文字配列バッファに移入します。
Stream
をオーバーライドします
このメソッドでは、現行のインスタンスから指定されたユニコードのバイト数を読み取り、ストリーム内の位置を進め、バイト配列バッファに移入します。
宣言
// C# public override int Read(byte[] buffer, int offset, int count);
パラメータ
buffer
移入されるバイト配列バッファ
offset
バッファに移入されるゼロ・ベースのオフセット(バイト)。
count
読み取られる最大バイト数
戻り値
ストリームの終わりに到達したとき、所定のbyte[]
バッファに読み込むユニコードのバイト数または0
。
備考
このメソッドでは、現行ストリームからcount
バイトの最大数を読み取り、それらをoffset
で始まるバッファに格納します。ストリーム内の現在の位置は、読み取られたバイト数によって進められます。ただし、例外が発生した場合、ストリーム内の現在の位置は変更されずに残ります。
XMLデータの読取りは、Position
プロパティにより指定された位置から開始されます。
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
InvalidOperationException
- OracleConnection
がオープンされていないか、またはオブジェクトの存続中にクローズされています。
Stream
をオーバーライドします
このメソッドでは、現行のインスタンスから指定された文字数を読み取り、ストリーム内の位置を進め、文字配列バッファに移入します。
宣言
// C# public override int Read(char[] buffer, int offset, int count);
パラメータ
buffer
移入される文字配列バッファ。
offset
データ移入元バッファのゼロ・ベースのオフセット(文字)
count
ストリームから読み取られる最大文字数
戻り値
戻り値は、ストリームの終わりに到達した場合のストリームから読み取られた文字数または0
を示します。
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
InvalidOperationException
- OracleConnection
がオープンされていないか、またはオブジェクトの存続中にクローズされています。
備考
このメソッドでは、ストリーム・インスタンス上のPosition
をゼロまたは偶数にする必要があります。
XMLデータの読取りは、Position
プロパティにより指定された位置から開始されます。
Stream
をオーバーライドします
このメソッドでは、現行ストリーム内の位置を設定し、現行ストリーム内の新しい位置を戻します。
宣言
// C# public long Seek(long offset, SeekOrigin origin);
パラメータ
offset
起点に相対的なバイト・オフセット
offset
が負の場合は、新規位置がoffset
によって指定されたバイト数だけ、origin
で指定した位置より前にあります。
offsetがゼロの場合は、origin
で指定した位置が新規位置となります。
offset
が正の場合は、新規位置はoffset
によって指定されたバイト数だけ、origin
で指定した位置より後にあります。
origin
新規位置を取得する場合に使用する参照ポイントを示すタイプSeekOrigin
の値。
戻り値
現行ストリーム内の新規Position
。
例外
ObjectDisposedException
- オブジェクトはすでに処理されています。
InvalidOperationException
- OracleConnection
がオープンされていないか、またはオブジェクトの存続中にクローズされています。
備考
CanSeek
プロパティを使用して、現行インスタンスが検索をサポートしているかどうかを判断します。ストリーム長を超えた任意の位置の検索がサポートされています。