ヘッダーをスキップ
Oracle® Data Provider for .NET開発者ガイド
11g リリース2 (11.2.0.4)
B66456-02
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

OracleXmlStreamクラス

OracleXmlStreamオブジェクトは、OracleXmlTypeオブジェクトに格納されているXMLデータの読取り専用ストリームを表します。

クラスの継承

System.Object

  System.MarshalByRefObject

    System.Stream

      System.OracleXmlStream

宣言

// C#
public sealed class OracleXmlStream : IDisposable, ICloneable

スレッド安全性

パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。

要件

ネームスペース: Oracle.DataAccess.Types

アセンブリ: Oracle.DataAccess.dll

ODP.NETのバージョン: ODP.NET for .NET Framework 2.0またはODP.NET for .NET Framework 4


OracleXmlStreamメンバー

次の表に、OracleXmlStreamメンバーを示します。

OracleXmlStreamコンストラクタ

OracleXmlStreamコンストラクタを、表6-12にリストします。

表6-12 OracleXmlStreamコンストラクタ

コンストラクタ 説明

OracleXmlStreamコンストラクタ

OracleXmlTypeオブジェクト内に格納されたXMLデータのStream表現を提供する、OracleXmlStreamオブジェクトのインスタンスを作成します。


OracleXmlStream静的メソッド

OracleXmlStream静的メソッドを、表6-13にリストします。

表6-13 OracleXmlStream静的メソッド

メソッド 説明

Equals

System.Objectからの継承(オーバーロード)


OracleXmlStreamインスタンス・プロパティ

OracleXmlStreamインスタンス・プロパティを、表6-14にリストします。

表6-14 OracleXmlStreamインスタンス・プロパティ

プロパティ 説明

CanRead

XMLストリームが読取り可能かどうかを示します

CanSeek

順方向および逆方向検索操作が実行可能かどうかを示します

CanWrite

サポート対象外

Connection

XMLデータの取得に使用するOracleConnectionを示します

Length

XMLストリーム内のバイト数を示します。

Position

ストリーム内のバイト位置を取得または設定します。

Value

ストリームの最初の文字を起点とする文字列としてXMLデータを戻します。


OracleXmlStreamインスタンス・メソッド

OracleXmlStreamインスタンス・メソッドを、表6-15にリストします。

表6-15 OracleXmlStreamインスタンス・メソッド

メソッド 説明

BeginRead

System.IO.Streamから継承します

BeginWrite

System.IO.Streamから継承します

Clone

OracleXmlStreamオブジェクトのコピーを作成します

Close

現行のストリームをクローズし、それに関連するリソースを解除します

Dispose

このオブジェクトによって割り当てられたリソースを解除します

EndRead

System.IO.Streamから継承します

EndWrite

System.IO.Streamから継承します

Equals

System.Objectからの継承

Flush

サポート対象外

GetHashCode

System.Objectからの継承

GetLifetimeService

System.MarshalByRefObjectからの継承

GetType

System.Objectからの継承

InitializeLifetimeService

System.MarshalByRefObjectからの継承

Read

現行のストリーム・インスタンスから指定された数量を読み取り、配列バッファに移入します(オーバーロード)

ReadByte

System.IO.Streamから継承します

Seek

現行ストリーム内の位置を設定し、現行ストリーム内の新しい位置を戻します。

SetLength

サポート対象外

ToString

System.Objectからの継承

Write

サポート対象外

WriteByte

サポート対象外



OracleXmlStreamコンストラクタ

このコンストラクタは、OracleXmlTypeオブジェクト内に格納されたXMLデータのStream表現を提供する、OracleXmlStreamオブジェクトのインスタンスを作成します。

宣言

// C#
public OracleXmlStream(OracleXmlType xmlType);

パラメータ

  • xmlType

    OracleXmlTypeオブジェクト。

備考

OracleXmlStreamオブジェクトは、構築元であるOracleXmlTypeオブジェクトからのOracleConnectionオブジェクトを暗黙的に使用します。


OracleXmlStream静的メソッド

OracleXmlStream静的メソッドを、表6-16にリストします。

表6-16 OracleXmlStream静的メソッド

メソッド 説明

Equals

System.Objectからの継承(オーバーロード)



OracleXmlStreamインスタンス・プロパティ

OracleXmlStreamインスタンス・プロパティを、表6-17にリストします。

表6-17 OracleXmlStreamインスタンス・プロパティ

プロパティ 説明

CanRead

XMLストリームが読取り可能かどうかを示します

CanSeek

順方向および逆方向検索操作が実行可能かどうかを示します

CanWrite

サポート対象外

Connection

XMLデータの取得に使用するOracleConnectionを示します

Length

XMLストリーム内のバイト数を示します。

Position

ストリーム内のバイト位置を取得または設定します。

Value

ストリームの最初の文字を起点とする文字列としてXMLデータを戻します。


CanRead

Streamをオーバーライドします。

このプロパティは、XMLストリームが読取り可能であるかどうかを示します。

宣言

// C#
public override bool CanRead{get;}

プロパティ値

XMLストリームが読取り可能である場合はtrueを戻し、それ以外の場合はfalseを戻します。

CanSeek

Streamをオーバーライドします。

このプロパティでは、順方向および逆方向シーク操作が実行可能かどうかを示します。

宣言

// C#
public override bool CanSeek{get;}

プロパティ値

順方向および逆方向シーク操作が実行可能の場合、このプロパティはtrueを戻し、それ以外の場合はfalseを戻します。

Connection

このインスタンス・プロパティでは、XMLデータの取得に使用するOracleConnectionを示します。

宣言

// C#
public OracleConnection Connection {get;}

プロパティ値

OracleConnection

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

Length

Streamをオーバーライドします。

このプロパティでは、XMLストリーム内のバイト数を示します。

宣言

// C#
public override Int64 Length{get;}

プロパティ値

XMLストリーム内のバイト数を表すInt64値。空のストリームの長さは0バイトです。

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

InvalidOperationException - OracleConnectionがオープンされていないか、またはオブジェクトの存続中にクローズされています。

Position

Streamをオーバーライドします。

このプロパティではストリーム内のバイト位置を取得または設定します。

宣言

// C#
public override Int64 Position{get; set;}

プロパティ値

ストリーム内の現行の位置を示すInt64

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

InvalidOperationException - OracleConnectionがオープンされていないか、またはオブジェクトの存続中にクローズされています。

ArgumentOutOfRangeException - Positionは0未満です。

備考

ストリームの開始は、位置0で表します。ストリーム長を超えた任意の位置の検索がサポートされています。

Value

このプロパティではストリームの最初の文字を起点とする文字列としてXMLデータを戻します。

宣言

// C#
public string Value{get; set;}

プロパティ値

string

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

InvalidOperationException - OracleConnectionがオープンされていないか、またはオブジェクトの存続中にクローズされています。

備考

このプロパティの使用により、Positionの値が使用または変更されることはありません。

このプロパティが戻すことができる文字列の最大長は2GBです。


OracleXmlStreamインスタンス・メソッド

OracleXmlStreamインスタンス・メソッドを、表6-18にリストします。

表6-18 OracleXmlStreamインスタンス・メソッド

メソッド 説明

BeginRead

System.IO.Streamから継承します

BeginWrite

System.IO.Streamから継承します

Clone

OracleXmlStreamオブジェクトのコピーを作成します

Close

現行のストリームをクローズし、それに関連するリソースを解除します

Dispose

このオブジェクトによって割り当てられたリソースを解除します

EndRead

System.IO.Streamから継承します

EndWrite

System.IO.Streamから継承します

Equals

System.Objectからの継承

Flush

サポート対象外

GetHashCode

System.Objectからの継承

GetLifetimeService

System.MarshalByRefObjectからの継承

GetType

System.Objectからの継承

InitializeLifetimeService

System.MarshalByRefObjectからの継承

Read

現行XMLストリーム・インスタンスから指定された数量を読み取り、配列バッファに移入します(オーバーロード)

ReadByte

System.IO.Streamから継承します

Seek

現行ストリーム内の位置を設定し、現行ストリーム内の新しい位置を戻します。

SetLength

サポート対象外

ToString

System.Objectからの継承

Write

サポート対象外

WriteByte

サポート対象外


Clone

このメソッドでは、OracleXmlStreamオブジェクトのコピーを作成します。

宣言

// C#
public object Clone();

戻り値

OracleXmlStreamオブジェクト。

実装

ICloneable

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

InvalidOperationException - OracleConnectionがオープンされていないか、またはオブジェクトの存続中にクローズされています。

備考

複製されたオブジェクトのプロパティ値は、複製元のオブジェクトのプロパティ値と同じです。

Close

Streamをオーバーライドします。

このメソッドは現行のストリームをクローズし、それに関連するあらゆるリソースを解放します。

宣言

// C#
public override void Close();

Dispose

このパブリック・メソッドでは、このオブジェクトによって割り当てられたリソースを解除します。

宣言

// C#
public void Dispose();

実装

IDisposable

備考

オブジェクトは、処理後は再度使用できません。一部のプロパティには継続してアクセスできますが、その値は適切ではありません。リソースが解放されているため、メソッドのコールにより例外が発生することがあります。

Read

このメソッドは、現行XMLストリーム・インスタンスから指定数を読み取り、配列バッファに移入します。

オーバーロード・リスト:

  • Read(byte[ ], int, int)

    このメソッドでは、現行のインスタンスから指定されたユニコードのバイト数を読み取り、ストリーム内の位置を進め、バイト配列バッファに移入します。

  • Read(char[ ], int, int)

    このメソッドでは、現行のインスタンスから指定された文字数を読み取り、ストリーム内の位置を進め、文字配列バッファに移入します。

Read(byte[ ], int, int)

Streamをオーバーライドします。

このメソッドでは、現行のインスタンスから指定されたユニコードのバイト数を読み取り、ストリーム内の位置を進め、バイト配列バッファに移入します。

宣言

// C#
public override int Read(byte[ ] buffer, int offset, int count);

パラメータ

  • buffer

    移入されるバイト配列バッファ

  • offset

    バッファに移入されるゼロ・ベースのオフセット(バイト)。

  • count

    読み取られる最大バイト数

戻り値

ストリームの終わりに到達したとき、所定のbyte[]バッファに読み込むユニコードのバイト数または0

備考

このメソッドでは、現行ストリームからcountバイトの最大数を読み取り、それらをoffsetで始まるバッファに格納します。ストリーム内の現在の位置は、読み取られたバイト数によって進められます。ただし、例外が発生した場合、ストリーム内の現在の位置は変更されずに残ります。

XMLデータの読取りは、Positionプロパティにより指定された位置から開始されます。

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

InvalidOperationException - OracleConnectionがオープンされていないか、またはオブジェクトの存続中にクローズされています。

Read(char[ ], int, int)

Streamをオーバーライドします。

このメソッドでは、現行のインスタンスから指定された文字数を読み取り、ストリーム内の位置を進め、文字配列バッファに移入します。

宣言

// C#
public override int Read(char[ ] buffer, int offset, int count);

パラメータ

  • buffer

    移入される文字配列バッファ。

  • offset

    データ移入元バッファのゼロ・ベースのオフセット(文字)

  • count

    ストリームから読み取られる最大文字数

戻り値

戻り値は、ストリームの終わりに到達した場合のストリームから読み取られた文字数または0を示します。

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

InvalidOperationException - OracleConnectionがオープンされていないか、またはオブジェクトの存続中にクローズされています。

備考

このメソッドでは、ストリーム・インスタンス上のPositionをゼロまたは偶数にする必要があります。

XMLデータの読取りは、Positionプロパティにより指定された位置から開始されます。

Seek

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プロパティを使用して、現行インスタンスが検索をサポートしているかどうかを判断します。ストリーム長を超えた任意の位置の検索がサポートされています。