ヘッダーをスキップ
Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス
11g リリース1(11.1)
E05686-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

238 UTL Streamsタイプ

UTL Streamsタイプは、Oracle XML機能で使用される抽象タイプを記述します。SYSスキーマ内に4つの抽象PL/SQLストリームが導入および定義されています。これらのストリームはPUBLICで参照できます。以降の項で説明します。



この章では、次の項目について説明します。


UTL Binary Streamsタイプの要約

表238-1 UTL Binary Streamsタイプ

タイプ 説明

UTL_BINARYINPUTSTREAMタイプ


バイトを読み取り、ストリームをクローズします。

UTL_BINARYOUTPUTSTREAMタイプ


バイトを書き込み、ストリームをクローズします。

UTL_CHARACTERINPUTSTREAMタイプ


文字を読み取り、ストリームをクローズします。

UTL_CHARACTEROUTPUTSTREAMタイプ


文字を書き込み、ストリームをクローズします。



UTL_BINARYINPUTSTREAMタイプ

このタイプは、ストリームの読取りとクローズのみを行うことができるという点で、java.io.InputStreamと似ています。

構文

CREATE OR REPLACE TYPE Utl_BinaryInputStream AS OBJECT (

   MEMBER FUNCTION available (
        self    IN OUT NOCOPY  Utl_BinaryInputStream)
     RETURN INTEGER,

   MEMBER FUNCTION read (                                  -- #1
      self      IN OUT NOCOPY  Utl_BinaryInputStream,
      numBytes  IN             INTEGER DEFAULT 1)
    RETURN RAW,

  MEMBER PROCEDURE read (                                  -- #2
     self       IN OUT NOCOPY   Utl_BinaryInputStream,
     bytes      IN OUT NOCOPY  RAW,
     numBytes   IN OUT         INTEGER),

  MEMBER PROCEDURE read (                                  -- #3
     self       IN OUT NOCOPY   Utl_BinaryInputStream,
     bytes      IN OUT NOCOPY   RAW,
     offset     IN INTEGER,
     numBytes   IN OUT          INTEGER),

  member function close (
     self       In Out Nocopy   Utl_BinaryInputStream)

 ) NOT FINAL;

属性

表238-2 UTL_BINARYINPUTSTREAMタイプのメンバー・サブプログラム

メンバー・サブプログラム 説明

AVAILABLE

読取り可能なバイト数を戻します。

READ

  • #1 - numBytesによって指定されたバイト数(デフォルトは1)を読み取り、バイトをRAWとして戻します。残っているバイトがない場合、値NULLが戻されます。

  • #2 - numBytesで指定されたバイト数をパラメータbytesに読み込みます。また、実際に読み取られたバイト数が、パラメータnumBytesに戻されます。このパラメータが0に設定されている場合、それ以上読み取るバイトはありません。

  • #3 - numBytesで指定されたバイト数をパラメータbytesに読み込みます。パラメータoffsetによって指定されたオフセット位置から開始します。実際に読み取られたバイト数が、パラメータnumBytesに戻されます。この値が0の場合、それ以上読み取るバイトはありません。

CLOSE

ストリームをサポートするためにノードに保持されているすべてのリソースを解放します。



UTL_BINARYOUTPUTSTREAMタイプ

このタイプは、ストリームの書込みとクローズのみを行うことができるという点で、java.io.OutputStreamと似ています。

構文

CREATE OR REPLACE TYPE Utl_BinaryOutputStream AS OBJECT (

  MEMBER FUNCTION write (                                  -- #1
       self       IN OUT NOCOPY   sys.utl_BinaryOutputStream,
       bytes      IN              RAW,
       numBytes   IN              INTEGER DEFAULT 1)
  RETURN INTEGER,

  MEMBER PROCEDURE write (                                  -- #2
       self       IN OUT NOCOPY  sys.utl_BinaryOutputStream,
       bytes      IN NOCOPY      RAW,
       numBytes   IN OUT         INTEGER),

  MEMBER PROCEDURE write (                                  -- #3
       self       IN OUT NOCOPY  utl_BinaryOutputStream,
       bytes      IN NOCOPY      RAW,
       offset     IN             INTEGER,
       numBytes   IN OUT         INTEGER),

  MEMBER PROCEDURE flush (
       self       IN OUT NOCOPY  utl_BinaryOutputStream),

  MEMBER PROCEDURE close (
       self       IN OUT NOCOPY utl_BinaryOutputStream)

 ) NOT FINAL;

属性

表238-3 UTL_BINARYOUTPUTSTREAMタイプのメンバー・サブプログラム

メンバー・サブプログラム 説明

WRITE

  • #1 - RAWからnumBytesによって指定されたバイト数(デフォルトは1)をストリームに書き込みます。実際に書き込まれたバイト数が戻されます。

  • #2 - パラメータbytesからパラメータnumBytesで指定されたバイト数をストリームに書き込みます。実際に書き込まれたバイト数は、パラメータnumBytesに戻されます。

  • #3 - numBytesによって指定されたバイト数をストリームに書き込みます。パラメータoffsetによって指定されたオフセット位置から開始します。実際に書き込まれたバイト数は、パラメータnumBytesに戻されます。

FLUSH

バッファに入れたすべてのバイトを宛先ノードに確実にコピーします。

CLOSE

ストリームに関連付けられたすべてのリソースを解放します。



UTL_CHARACTERINPUTSTREAMタイプ

このタイプは、文字(chars)の読取りとストリームのクローズのみを行うことができるという点で、java.io.Readerと似ています。

構文

CREATE OR REPLACE TYPE Utl_CharacterInputStream AS OBJECT (

   MEMBER FUNCTION available (
       self       IN OUT NOCOPY   utl_CharacterInputStream)
     RETURN INTEGER,
   MEMBER FUNCTION read (                                  -- #1
       self       IN OUT NOCOPY   utl_CharacterInputStream,
       numChars   IN              INTEGER DEFAULT 1,
       lineFeed   IN              BOOLEAN DEFAULT FALSE)
    RETURN VARCHAR2,
  MEMBER PROCEDURE read (                                  -- #2
       self      IN OUT NOCOPY    utl_CharacterInputStream,
        chars     IN OUT NOCOPY    VARCHAR2,
        numChars  IN OUT           INTEGER,
       lineFeed  IN BOOLEAN DEFAULT FALSE),
  MEMBER PROCEDURE read (                                  -- #3
       self      IN  OUT NOCOPY   utl_CharacterInputStream,
        chars     IN OUT NOCOPY    VARCHAR2,
        offset    IN               INTEGER,
        numChars  IN OUT           INTEGER,
       lineFeed  IN               BOOLEAN DEFAULT FALSE),
   MEMBER PROCEDURE close (
      self       IN OUT NOCOPY    utl_CharacterInputStream)  ) NOT FINAL;

属性

表238-4 UTL_CHARACTERINPUTSTREAMタイプのメンバー・サブプログラム

メンバー・サブプログラム 説明

AVAILABLE

読取り可能なバイト数を戻します。

READ

  • #1 - 残りの読取り対象の文字数を戻します。

  • #2 - numCharsによって指定された文字数(デフォルト値は1)を読み取り、文字をVARCHAR2として戻します。lineFeedの値がtrueの場合(デフォルト値はFALSE)、改行文字が見つかると読取りが中止されます。残っている文字がない場合、値NULLが戻されます。

  • #3 - パラメータnumCharsによって指定された文字数をパラメータcharsに読み込みます。また、実際に読み取られた文字数が、パラメータnumCharsに戻されます。この値が0の場合、それ以上読み取る文字はありません。lineFeedの値がTRUEの場合(デフォルトはFALSE)、改行文字が見つかると読取りが中止されます。

CLOSE

ストリームによって保持されているすべてのリソースを解放します。



UTL_CHARACTEROUTPUTSTREAMタイプ

このタイプは、文字(chars)の書込みとストリームのクローズのみを行うことができるという点で、java.io.Writerと似ています。

構文

CREATE OR REPLACE TYPE utl_CharacterOutputStream  AS OBJECT (

 MEMBER FUNCTION write (                                  -- #1
     self      IN OUT NOCOPY   utl_CharacterOutputStream,
     chars     IN              VARCHAR2,
     numChars  IN              INTEGER DEFAULT 1,
     lineFeed  IN              BOOLEAN DEFAULT FALSE)
  RETURN INTEGER,

 MEMBER PROCEDURE write (                                  -- #2
     self      IN OUT NOCOPY   utl_CharacterOutputStream,
     chars     IN OUT NOCOPY   VARCHAR2,
     numChars  IN OUT          INTEGER,
     lineFeed  IN              BOOLEAN DEFAULT FALSE),

 member procedure write (                                  -- #3
     self     IN OUT NOCOPY    utl_CharacterOutputStream,
     chars    IN  NOCOPY       varchar2,
     offset   IN               integer,
     numChars IN OUT           integer,
    lineFeed  IN               boolean default false),

 MEMBER PROCEDURE flush (
     self     IN OUT NOCOPY    utl_CharacterOutputStream),

MEMBER PROCEDURE close (
     self     IN OUT NOCOPY utl_CharacterOutputStream)

 ) NOT FINAL;

属性

表238-5 UTL_CHARACTEROUTPUTSTREAMタイプのメンバー・サブプログラム

メンバー・サブプログラム 説明

WRITE

  • #1 - パラメータcharsからnumCharsによって指定された文字数(デフォルトは1)をストリームに書き込み、実際に書き込まれた文字数を戻します。lineFeedの値がTRUEの場合(デフォルトはFALSE)、最後の文字の後にlineFeed文字が挿入されます。

  • #2 - パラメータcharsからパラメータnumCharsによって指定された文字数をストリームに書き込みます。実際に書き込まれた文字数が、パラメータnumCharsに戻されます。lineFeedの値がtrueの場合(デフォルトはFALSE)、最後の文字の後にlineFeed文字が挿入されます。

  • #3 - パラメータcharsからパラメータnumCharsによって指定された文字数を書き込みます。パラメータoffsetによって指定されたオフセット位置から開始します。実際に書き込まれた文字数が、パラメータnumCharsに戻されます。lineFeedの値がtrueの場合(デフォルトはFALSE)、最後の文字の後にlineFeed文字が挿入されます。

FLUSH

バッファに含まれているすべての文字をノード値にコピーします。

CLOSE

ストリームが保持しているすべてのリソースを解放します。