Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

$ZDASCII

8 バイト文字列を $DOUBLE 浮動小数点数に変換します。

Synopsis

$ZDASCII(string,position)
$ZDA(string,position)

パラメータ

string 文字列または数値。値、変数、式として指定することができます。長さは 8 バイト以上でなければなりません。数値は、$ZDASCII に指定される前に、先頭のプラス記号、および先頭と末尾のゼロを削除することによって、キャノニック形式に変換されます。結果として得られるキャノニック形式の数の長さは 8 バイト以上でなければなりません。
position オプション — 正の、ゼロ以外の整数として表される、文字列の開始位置。既定は 1 です。位置は、8 バイト文字列ではなくシングル・バイト単位でカウントされます。指定された position (その位置の文字を含む) から少なくとも 8 バイトの string が存在する必要があります。position の数値は、小数桁数を切り捨て、先行するゼロやプラス記号などを削除することによって、整数として解析されます。

説明

$ZDASCII が返す値は、使用するパラメータによって異なります。

  • $ZDASCII(string) は、string の最初の文字位置から開始して、8 バイト文字列を $DOUBLE (IEEE 浮動小数点) の数値に変換して返します。

  • $ZDASCII(string,position) は、position で指定したバイト位置から開始して、8 バイト文字列を $DOUBLE (IEEE 浮動小数点) の数値に変換して返します。

$ZDASCII は、正の数または負の数のいずれかを返すことができます。

$ZDASCII は、string の長さが 8 バイト未満の場合、指定された position の残りの string が 8 バイト未満の場合、または position が無効な値の場合に、<FUNCTION> エラーを発行します。

以下は、数値 12345678 を数値に変換する例です。

  WRITE $ZDASCII(12345678)

これは .000000000000000000000000000000000000068213200517013251261 を返します。

次の例も同じ値を返します。

  WRITE !,$ZDASCII("12345678",1)
  WRITE !,$ZDASCII(++001234567899,1)
  WRITE !,$ZDASCII("++001234567899",5)

以下は、負の数値 -1234567 を数値に変換する例です。マイナス記号は 1 バイトとしてカウントされることに注意してください。

  WRITE $ZDASCII(-1234567)

これは .00000000000000000000000000000000000000000099583343788967399388 を返します。

以下は、文字列 “abcdefgh" を数値に変換する例です。

  WRITE $ZDASCII("abcdefgh")

これは 85408832230361244356000000000000000000000000000000000000000000000000000 を返します。

メモ

$ZDASCII とその他の $ASCII 関数

$ZDASCII は、8 バイト (64 ビット) 文字の文字列を IEEE 浮動小数点数に変換します。$ZQASCII は、8 バイト (64 ビット) 文字の文字列を整数に変換します。8 ビット・バイト文字列を整数に変換するには、$ASCII を使用します。16 ビット (wide) 文字の文字列を整数に変換するには、$ZWASCII を使用します。32 ビット (long) 文字の文字列を整数に変換するには、$ZLASCII を使用します。

関連項目

FeedbackOpens in a new tab