ヘッダーをスキップ
Oracle Data Provider for .NET開発者ガイド
11g リリース1(11.1)
E05791-01
  目次へ
目次
索引へ
索引

戻る
戻る
 
次へ
次へ
 

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

Microsoft .NET Frameworkバージョン: 1.xまたは2.0

このクラスは、Oracle9iリリース2(9.2)以上でのみ使用できます。


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);

パラメータ

備考

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)

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

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

宣言

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

パラメータ

戻り値

指定されたbyte[]バッファに読み取られるUnicodeバイト数か、ストリームの終わりに達した場合の0

備考

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

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

例外

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

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

Read(char[ ], int, int)

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

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

宣言

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

パラメータ

戻り値

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

例外

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

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

備考

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

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

Seek

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

このメソッドは現行のストリーム内に位置を設定し、現行のストリーム内の新規の位置を戻します。

宣言

// C#
public long Seek(long offset, SeekOrigin origin);

パラメータ

戻り値

現行のストリーム内の新規のPosition

例外

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

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

備考

現行のインスタンスが検索をサポートしているかどうかを調べるには、CanSeekプロパティを使用します。ストリーム長を超えている位置の検索がサポートされています。