フォーマット・インフォーマット

Last-modified: 2008-12-03 (水) 03:31:27

インフォーマット(informat)は,データをSASデータセットに格納する際の形式を指定します.フォーマット(format)は,その逆で格納されているデータを画面や外部ファイルに書き出す際の形式を指定します.たとえば,「1,980」という5文字のデータをカンマ区切りの数字として認識させて,数値の「1980」として格納させるのが,インフォーマットで,格納された数値の「1980」を,小数点以下2桁つきで,「1980.00」と画面に表示させるのが,フォーマットです.

data samp;
 input X comma10.;
cards;
1,980
;
data samp;set samp;
  put X 10.2;
run;
/*
   1980.00
 */

外部ファイルやcards文
1,980 (テキスト)

↓input X comma10. ; /*インフォーマットでカンマ区切数字を読み込む*/
  (または,X=input("1,980",comma10.); という使い方もできる)

変数X
1980 (数値)

↓put X 10.2 ; /*フォーマットで小数点以下2桁つき数字として書き出す*/
  (または Y=put(X,10.2); という使い方もできる)

外部ファイルやログ画面,プリント画,または文字変数Y
1980.00  (テキスト)

この例では,変数Xは数値型変数ですが,文字型変数に対するものもあります.文字型変数に対するフォーマット,インフォーマットには,原則として必ず$マークがついています.

上記が,フォーマットとインフォーマットの基本的な考え方で,多くの種類の表記形式が用意されています.また,FORMATプロシジャ?を使うことで,ユーザ定義のフォーマットをつくることもできます.

数値表記

  • w.dフォーマット , w.dインフォーマット 標準(w長うち小数d桁) put(1234,7.2) = 1234.00 , input("1234.567",7.2) = 1234.56
  • BESTw.フォーマット , おまかせ表示 put(1234,best.) = 1234 , input("1234.567",best.) = 1234.567
  • BINARYw.フォーマット , BINARYw.dインフォーマット 2進表記 put(1234,binary12.) = 010011010010 , input("010011010010",binary12.) = 1234
  • BITSw.dインフォーマット ビット読み input("A",bits8.) = 65
  • BZw.dインフォーマット 空白を0読み input("12",bz8.) = 12
  • COMMAw.dフォーマット , COMMAw.dインフォーマット 3桁カンマ区切り put(1234,comma8.) = 1,234 , input("1,234",comma8.) = 1234
  • COMMAXw.dフォーマット , COMMAXw.dインフォーマット 3桁ピリオド区切り put(1234.5,commax8.2) = 1.234,50 , input("1.234,50",commax8.2) = 1234.5
  • Dw.sフォーマット , 小数点位置の自動調整 put(1234,d12.) = 1234.000000
  • DOLLARw.dフォーマット , DOLLARw.dインフォーマット ドル表示 put(1234,dollar8.) = $1,234 , input("$1,234",dollar8.) = 1234
  • DOLLARXw.dフォーマット , DOLLARXw.dインフォーマット ドル表示(ピリオド区切り) put(1234.5,dollarx8.2) = $1234,50 , input("$1.234,50",dollarx8.2) = 1234.5
  • Ew.フォーマット , Ew.dインフォーマット 科学表記 put(1234,e.) = 1.23400E+03 , input("1.234e3",e.) = 1234
  • EUROw.dフォーマット , EUROw.dインフォーマット ユーロ表示 put(1234,euro8.) = E1,234 , input("E1,234",euro8.) = 1234
  • EUROXw.dフォーマット , EUROXw.dインフォーマット ユーロ表示(ピリオド区切り) put(1234.5,eurox8.1) = E1.234,5 , input("E1.234,50",eurox8.1) = 1234.5
  • FRACTw.フォーマット 分数表記 put(0.25,fract.) = 1/4
  • HEXw.フォーマット , HEXw.インフォーマット 16進表記 put(1234,hex.) = 000004D2 , input("000004D2",hex.) = 1234
  • NEGPARENw.dフォーマット , NEGPARENw.dインフォーマット 負数を括弧表示 put(-1234,negparen8.) = (1,234) , input("(1234)",negparen8.) = -1234
  • NUMXw.dフォーマット , NUMXw.dインフォーマット 小数点カンマ表示 put(123.4,numx8.1) = 123,4 , input("123,4",numx8.1) = 123.4
  • OCTALw.フォーマット , OCTALw.dインフォーマット 8進表記 put(1234,octal4.) = 2322 , input("2322",octal.) = 1234
  • PERCENTw.dフォーマット , PERCENTw.dインフォーマット パーセント表記 put(0.1234,percent8.1) = 12.3% , input("12.34%",percent8.1) = 0.1234
  • PVALUEw.dフォーマット P値表記 put(0.00001,pvalue.) = <.0001
  • ROMANw.フォーマット ローマ数字表記 put(1234,roman12.) = MCCXXXIV
  • SSNw.フォーマット 社会保障番号形式999-99-9999 put(123456789,ssn.) = 123-45-6789
  • TRAILSGNw.インフォーマット 符号後置表記 input("1234-",trailsgn8.) = -1234
  • WORDFw.フォーマット , 分数英語表記 put(123.4,wordf50.) = one hundred twenty-three and 40/100 ,
  • WORDSw.フォーマット 英語表記 put(123.4,words50.) = one hundred twenty-three and forty hundredths
  • YENw.dフォーマット , YENw.dインフォーマット 円表示 put(1234,yen8.) = \1,234 , input("\1,234",yen8.) = 1234
  • Zw.dフォーマット ゼロパディング(左の空桁を0で埋める) put(1234,z8.) = 00001234

文字表記

  • $w.フォーマット , $w.インフォーマット 標準 put("ABC",$8.) = ABC , input("ABC",$8.) = ABC
  • $BINARYw.フォーマット , $BINARYw.インフォーマット 2進コード表記 put("ABC",$binary8.) = 01000001 , input("01000001",$binary8.) = A
  • $CHARw.フォーマット , $CHARw.インフォーマット 空白を含む文字列 put("ABC",$char8.) = ABC , input("ABC",$char8.) = ABC
  • $CHARZBw.インフォーマット バイナリコードの00を空白として読む input("ABC",$charzb8.) = ABC
  • $HEXw.フォーマット , $HEXw.インフォーマット 16進コード表記 put("ABC",$hex8.) = 414243 , input("414243",$hex8.) = ABC
  • $MSGCASEw.フォーマット , MSGCASE=システムオプションが有効ならば,大文字 put("ABC",$msgcase8.) = ABC ,
  • $OCTALw.フォーマット , $OCTALw.インフォーマット 8進コード表記 put("ABC",$octal8.) = 10110210 , input("10110210",$octal8.) = AB@
  • $QUOTEw.フォーマット , $QUOTEw.インフォーマット クォートされた文字列 put("ABC",$quote8.) = "ABC" , input("ABC",$quote8.) = ABC
  • $REVERJw.フォーマット , $REVERJw.インフォーマット 逆順(左寄せしない) put("_ABC___",$reverj8.) = ___CBA__ , input("_ABC___",$reverj8.) = ___CBA__ (_は,空白をあらわす)
  • $REVERSw.フォーマット , $REVERSw.インフォーマット 逆順(左寄せ) put("_ABC___",$revers8.) = CBA_____ , input("_ABC___",$revers8.) = CBA_____ (_は,空白をあらわす)
  • $UPCASEw.フォーマット , $UPCASEw.インフォーマット 大文字 put("aBc",$upcase8.) = ABC , input("aBc",$upcase8.) = ABC
  • $VARYINGw.フォーマット , $VARYINGw.インフォーマット 可変長 put("ABC",$varying8.) = ABC , input("ABC",$varying8.) = ABC

SAS日付

SAS日付関連のフォーマット,インフォーマットには,大きく,SAS日付値用,SAS時間値用,SAS日時値用の3つがあります.なお,SAS日付などは,すべて数値型データですので,フォーマット,インフォーマットもすべて数値型となります.
see SAS日付関連のフォーマット,インフォーマット
see also SASの時間データの概念

  • SAS日付値フォーマット,インフォーマット
    • ddmmmyy形式 (28MAY2008)
    • ddmmyy,mmddyy,yymmdd形式 (2008-05-28)
    • 英語表記形式フォーマット (January 28, 2008)
    • 年月日の日付構成要素別フォーマット (May)
    • 何でも読むインフォーマット
    • 年月形式 (MAY08)
    • ジュリアンデート形式 (2008149)
    • 4半期形式 (2008Q2)
    • 曜日フォーマット (Monday, January 28, 2008)
    • 週番号 (2007-W51-03)
    • 区切り文字 (28.01.08)
    • 日本語,多国語対応 (H.20/01/28)
  • SAS時間値フォーマット,インフォーマット
    • hhmmss形式 (12:34:56)
    • 時分秒の時間構成要素別フォーマット (12:35)
    • 多国語対応 (午後12時34分56秒)
    • その他 (処理時間 1:31.25)
  • SAS日時値フォーマット,インフォーマット
    • ddmmmyyhhmmss形式 (28MAR08:12:34:56)
    • 年月日時間などの日時構成要素別フォーマット (28MAR08)
    • 多国語対応 (2008年03月28日 12時34分56秒)
    • その他

文字コード変換(1バイト文字)

  • $ASCIIw.フォーマット , $ASCIIw.インフォーマット アスキーコード put("ABC",$ascii8.) = ABC , input("ABC",$ascii8.) = ABC
  • $EBCDICw.フォーマット , $EBCDICw.インフォーマット EBCDICコード put("ABC",$ebcdic8.) = チツテ@@@@@ , input("ABC",$ebcdic8.) = ?。「
  • $PHEXw.インフォーマット パック16進コード input("AB123F"x,$phex6.) = AB123

Unicode変換

現在の文字コードから,ターゲットのUnicodeに変換して書き出すフォーマットとターゲットのUnicodeを現在の文字コードに変換して読み込むインフォーマットがあります.
さらに,上記の逆で,ターゲットのUnicodeから,現在の文字コードに変換して書き出すフォーマットと現在の文字コードをターゲットのUnicodeに変換して読み込むインフォーマットがあり,上記のフォーマット名,インフォーマット名の最後に"E"がつきます.
ターゲットとなるUnicodeには,エンディアンの種類,16bitか,32bitかなどの違いで10種類用意されており,一部を除いて,それぞれ上の4つが揃っています.

次の例は,16-bit(ucs2)のビッグエンディアンをターゲットにした変換例です.
この場合,put(*,ucs2be.)とinput(*,$ucs2b.),put(*,ucs2b.)とinput(*,$ucs2be.)は,それぞれ同じ結果をもたらします.

data;
  x="翔";
  uc=put(x,$ucs2b.);
  sjis=put(uc,$ucs2be.);
  sjis2=input(uc,$ucs2b.);
  uc2=input(sjis,$ucs2be.);
  put x= hex. x;
  put uc= hex. uc;
  put uc2= hex. uc2;
  put sjis= hex. sjis;
  put sjis2= hex. sjis2;
run;
/*
x=E3C4 翔
uc=7FD4002000200020 ヤ
uc2=7FD4202020202020 ヤ
sjis=E3C4202020202020 翔
sjis2=E3C4202020202020 翔
 */

注:エンディアンとは,2バイトの上位バイト下位バイトをどっちを先に書くかのルールです.
ビッグエンディアンでは,「翔」のUnicode文字は,E3C4になっていますが,リトルエンディアンでは,C4E3となります.ネイティブエンディアンとは,そのプラットフォームの採用しているルールでwindowsは,リトルエンディアンです.よって,windowsでは,ネイティブエンディアンとリトルエンディアンは,同じ結果になります.

ターゲットのUnicode

  • 16ビットのビッグエンディアンUCS2形式 $UCS2Bw. *4種
  • 16ビットのリトルエンディアンUCS2形式 $UCS2Lw. *4種
  • 16ビットのネイティブエンディアンUCS2形式 $UCS2Xw. *4種
  • 32ビットのビッグエンディアンUCS4形式 $UCS4Bw.フォーマット, $UCS4Bw.インフォーマット, $UCS4BEw.フォーマット
  • 32ビットのリトルエンディアンUCS4形式 $UCS4Lw.フォーマット, $UCS4Lw.dインフォーマット, $UCS4LEw.フォーマット
  • 32ビットのネイティブエンディアンUCS4形式 $UCS4Xw. *4種
  • UNICODEエスケープ形式 $UESCw. *4種
  • NCR (numeric character references)形式 $UNCRw. *4種
  • UPAREN (Unicode parenthesis)形式 $UPARENw.フォーマット, $UPARENw.インフォーマット, $UPARENEw.フォーマット, $UPARENEw.インフォーマット, $UPARENPw.インフォーマット
  • UTF-8 (universal transformation format)形式 $UTF8Xw.フォーマット, $UTF8Xw.インフォーマット

4種:$*w.フォーマット,$*w.インフォーマット,$*Ew.フォーマット,$*Ew.インフォーマットの4つがあるという意味です.

see also URLエンコードのデコーディング

各国語表記(ロケール対応)

  • NLMNYw.dフォーマット , NLMNYw.dインフォーマット 通貨ローカル表記 put(1234.5,nlmny8.2) = ¥1,235 , input("1234.5",nlmny8.2) = 1234.5
  • NLMNYIw.dフォーマット , NLMNYIw.dインフォーマット 通貨国際表記 put(1234.5,nlmnyi8.2) = JPY1,235 , input("1234.5",nlmnyi8.2) = 1234.5
  • NLNUMw.dフォーマット , NLNUMw.dインフォーマット 数値ローカル表記 put(1234.5,nlnum8.2) = 1,234.50 , input("1234.5",nlnum8.2) = 1234.5
  • NLNUMIw.dフォーマット , NLNUMIw.dインフォーマット 数値国際表記 put(1234.5,nlnumi8.2) = 1,234.50 , input("1234.5",nlnumi8.2) = 1234.5
  • NLPCTw.dフォーマット , NLPCTw.dインフォーマット パーセントローカル表記 put(0.1234,nlpct8.2) = 12.34% , input("0.1234",nlpct8.2) = 0.1234
  • NLPCTIw.dフォーマット , NLPCTIw.dインフォーマット パーセント国際表記 put(0.1234,nlpcti8.2) = 12.34% , input("0.1234",nlpcti8.2) = 0.1234

数値表現型変換

  • FLOATw.dフォーマット , FLOATw.dインフォーマット 単精度浮動小数点 put(1234,float4.) = "00409A44"x , input("00409A44"x,float4.) = 1234
  • PDw.dフォーマット , PDw.dインフォーマット パック10進 put(1234,pd8.2) = "0000000000123400"x , input("0000000000123400"x,pd8.2) = 1234
  • IBw.dフォーマット , IBw.dインフォーマット 符号付きバイナリ整数 put(1234,ib8.2) = "08E2010000000000"x , input("08E2010000000000"x,ib8.2) = 1234
  • IBRw.dフォーマット , IBRw.dインフォーマット 符号付きバイナリ整数(Intel,DECフォーマット) put(1234,ibr8.2) = "08E2010000000000"x , input("08E2010000000000"x,ibr8.2) = 1234
  • IEEEw.dフォーマット , IEEEw.dインフォーマット IEEE浮動小数点 put(1234,ieee8.2) = "40FE208000000000"x , input("40FE208000000000"x,ieee8.2) = 1234
  • PIBw.dフォーマット , PIBw.dインフォーマット 正値バイナリ整数 put(1234,pib8.2) = "08E2010000000000"x , input("08E2010000000000"x,pib8.2) = 1234
  • PIBRw.dフォーマット , PIBRw.dインフォーマット 正値バイナリ整数(Intel,DECフォーマット) put(1234,pibr8.2) = "08E2010000000000"x , input("08E2010000000000"x,pibr8.2) = 1234
  • PKw.dフォーマット , PKw.dインフォーマット 符号無しパック10進 put(1234,pk8.2) = "0000000000123400"x , input("0000000000123400"x,pk8.2) = 1234
  • RBw.dフォーマット , RBw.dインフォーマット 浮動小数点 put(1234,rb8.2) = "000000008020FE40"x , input("000000008020FE40"x,rb8.2) = 1234
  • S370FFw.dフォーマット , S370FFw.dインフォーマット IBMシステム370規格のEBCDIC数値 put(1234,s370ff8.2) = "40F1F2F3F44BF0F0"x , input("40F1F2F3F44BF0F0"x,s370ff8.2) = 1234
  • S370FIBw.dフォーマット , S370FIBw.dインフォーマット IBMシステム370規格の符号付きバイナリ整数 put(1234,s370fib8.2) = "000000000001E208"x , input("000000000001E208"x,s370fib8.2) = 1234
  • S370FIBUw.dフォーマット , S370FIBUw.dインフォーマット IBMシステム370規格の符号無しバイナリ整数 put(1234,s370fibu8.2) = "000000000001E208"x , input("000000000001E208"x,s370fibu8.2) = 1234
  • S370FPDw.dフォーマット , S370FPDw.dインフォーマット IBMシステム370規格のパック10進 put(1234,s370fpd8.2) = "000000000123400C"x , input("000000000123400C"x,s370fpd8.2) = 1234
  • S370FPDUw.dフォーマット , S370FPDUw.dインフォーマット IBMシステム370規格の符号無しパック10進 put(1234,s370fpdu8.2) = "000000000123400F"x , input("000000000123400F"x,s370fpdu8.2) = 1234
  • S370FPIBw.dフォーマット , S370FPIBw.dインフォーマット IBMシステム370規格の正値バイナリ整数 put(1234,s370fpib8.2) = "000000000001E208"x , input("000000000001E208"x,s370fpib8.2) = 1234
  • S370FRBw.dフォーマット , S370FRBw.dインフォーマット IBMシステム370規格の浮動小数点 put(1234,s370frb8.2) = "451E208000000000"x , input("451E208000000000"x,s370frb8.2) = 1234
  • S370FZDw.dフォーマット , S370FZDw.dインフォーマット IBMシステム370規格のゾーン10進 put(1234,s370fzd8.2) = "F0F0F1F2F3F4F0C0"x , input("F0F0F1F2F3F4F0C0"x,s370fzd8.2) = 1234
  • S370FZDLw.dフォーマット , S370FZDLw.dインフォーマット IBMシステム370規格の前符号付きゾーン10進 put(1234,s370fzdl8.2) = "C0F0F1F2F3F4F0F0"x , input("C0F0F1F2F3F4F0F0"x,s370fzdl8.2) = 1234
  • S370FZDSw.dフォーマット , S370FZDSw.dインフォーマット IBMシステム370規格のセパレート前符号付きゾーン10進 put(1234,s370fzds8.2) = "4EF0F1F2F3F4F0F0"x , input("4EF0F1F2F3F4F0F0"x,s370fzds8.2) = 1234
  • S370FZDTw.dフォーマット , S370FZDTw.dインフォーマット IBMシステム370規格の後符号付きゾーン10進 put(1234,s370fzdt8.2) = "F0F1F2F3F4F0F04E"x , input("F0F1F2F3F4F0F04E"x,s370fzdt8.2) = 1234
  • S370FZDUw.dフォーマット , S370FZDUw.dインフォーマット IBMシステム370規格の符号無しゾーン10進 put(1234,s370fzdu8.2) = "F0F0F1F2F3F4F0F0"x , input("F0F0F1F2F3F4F0F0"x,s370fzdu8.2) = 1234
  • VAXRBw.dフォーマット , VAXRBw.dインフォーマット 浮動小数点(VMS) put(1234,vaxrb8.2) = "9A45004000000000"x , input("9A45004000000000"x,vaxrb8.2) = "12.34
  • ZDw.dフォーマット , ZDw.dインフォーマット ゾーン10進 put(1234,zd8.2) = "303031323334307B"x , input("303031323334307B"x,zd8.2) = 1234
  • , ZDBw.dインフォーマット ゾーン10進(空白を0と読む)
  • , ZDVw.dインフォーマット ゾーン10進(バリデーション)

パンチカードデータの読み込み

パンチカード(穿孔カード)のデータを読むためのフォーマットです.

パンチカードは,横に80カラム,縦に12行のパンチ位置をもつ情報カードで,
縦の穴の位置で,1つの文字をあらわします.

カラム	1	2	3	..	79	80
行
12		X
11
10
1
2
3
4
5
6		X
7
8		X
9	X
文字	9	N

横方向のカラムは,1から80まで,順に並んでいますが,縦方向の行は,最上行が,12から始まり,11,10(0とも書く),1,2,...,9と変則的に並んでいます.カラムには,0から3個の穴がパンチされ,その組み合わせで数字,英字,記号のいずれかをあらわします.
たとえば,行9の1箇所だけにパンチされていれば,数字の9をあらわします.行12と6と8の3箇所にパンチされていれば,英字のNになります.

カードにパンチされたデータは,カラムバイナリと呼ばれる形式のデータに格納されます.
これは,1カラムを2バイトにしてパンチ位置を,2バイトのビット位置に対応されたデータです.
1カラムの行は全部で12で,2バイトのビット数は16ありますから,以下のようにパンチされた位置のビットを1にします.

1バイト目			2バイト目
ビット	行		ビット	行
1	未使用		1	未使用
2	未使用		2	未使用
3	12		3	4
4	11		4	5
5	10		5	6
6	1		6	7
7	2		7	8
8	3		8	9

数字の9は,行9のみパンチされますから,2バイト目の第8ビット目だけが,1となり,16進表記であらわすと"0001"xとなります.英字のNは,行12,6,8にパンチされますから,"200A"x となります.

  • $CBw.インフォーマット パンチされた文字値を読む input("2000"x,$cb1.) = P
  • CBw.dインフォーマット パンチされた数字値を読む input("0008"x,cb1.) = 6
  • PUNCH.dインフォーマット 行dのパンチの有無を1/0で返す input("2000"x,punch.12) = 1
  • ROWw.dインフォーマット 行wからd行分の範囲での相対パンチ位置を返す input("0008"x,row4.5); = 3 指定範囲に複数のパンチがあると,エラーとなり欠損が返ります.パンチがない場合は正常処理ですが,この場合も値は欠損となります.

ユーロ国通貨変換

ユーロ加盟国のローカル通貨とユーロの通貨変換を行うフォーマットで,ローカルからユーロへ変換するEURFR*タイプと,ユーロからローカルへ変換するEURTO*タイプの2つが,以下のローカル通貨毎に用意されています.
デフォルトは,以下のサンプルで示されているとおり(1ユーロを各ローカル通貨にEURTOで変換しています)ですが,一部の通貨は変動するので,それに対しては,交換レートを外部ファイルで与える事ができます.

/*
変動レートの通貨の交換レートをデフォルト値から変更したい場合,
以下のような様式で,適当なテキストファイルを用意し,
ファイル参照名 EURFRTBL に割り当てます.
ここでは,英国ポンドの交換レートを変更していますが,
この様式で,複数の通貨の交換レートを指定できます.
 */
filename eurfrtbl 'eurfrtbl.txt';
data _null_;
  file eurfrtbl;
  input;
  put _infile_;
cards;
eurfrgbp=0.795652
;
  • EURFRATSw.d , EURTOATSw.dフォーマット euros from/to Austrian schillings put(1,eurtoats10.6) = 13.760300
  • EURFRBEFw.d , EURTOBEFw.dフォーマット euros from/to Belgian francs put(1,eurtobef10.6) = 40.339900
  • EURFRCHFw.d , EURTOCHFw.dフォーマット euros from/to Swiss francs (変動) put(1,eurtochf10.6) = 1.604300
  • EURFRCZKw.d , EURTOCZKw.dフォーマット euros from/to Czech koruny (変動) put(1,eurtoczk10.6) = 34.856300
  • EURFRDEMw.d , EURTODEMw.dフォーマット euros from/to Deutsche marks put(1,eurtodem10.6) = 1.955830
  • EURFRDKKw.d , EURTODKKw.dフォーマット euros from/to Danish kroner (変動) put(1,eurtodkk10.6) = 7.490090
  • EURFRESPw.d , EURTOESPw.dフォーマット euros from/to Spanish pesetas put(1,eurtoesp10.6) = 166.386000
  • EURFRFIMw.d , EURTOFIMw.dフォーマット euros from/to Finnish markkaa put(1,eurtofim10.6) = 5.945730
  • EURFRFRFw.d , EURTOFRFw.dフォーマット euros from/to French francs put(1,eurtofrf10.6) = 6.559570
  • EURFRGBPw.d , EURTOGBPw.dフォーマット euros from/to British pounds (変動) put(1,eurtogbp10.6) = 0.700132
  • EURFRGRDw.d , EURTOGRDw.dフォーマット euros from/to Greek drachmas put(1,eurtogrd10.6) = 340.750000
  • EURFRHUFw.d , EURTOHUFw.dフォーマット euros from/to Hungarian forints (変動) put(1,eurtohuf10.6) = 260.325000
  • EURFRIEPw.d , EURTOIEPw.dフォーマット euros from/to Irish pounds put(1,eurtoiep10.6) = 0.787564
  • EURFRITLw.d , EURTOITLw.dフォーマット euros from/to Italian lire put(1,eurtoitl10.6) = 1936.27000
  • EURFRLUFw.d , EURTOLUFw.dフォーマット euros from/to Luxembourg francs put(1,eurtoluf10.6) = 40.339900
  • EURFRNLGw.d , EURTONLGw.dフォーマット euros from/to Dutch guilders put(1,eurtonlg10.6) = 2.203710
  • EURFRNOKw.d , EURTONOKw.dフォーマット euros from/to Norwegian krone (変動) put(1,eurtonok10.6) = 9.197700
  • EURFRPLZw.d , EURTOPLZw.dフォーマット euros from/to Polish zlotys (変動) put(1,eurtoplz10.6) = 4.200000
  • EURFRPTEw.d , EURTOPTEw.dフォーマット euros from/to Portuguese escudos put(1,eurtopte10.6) = 200.482000
  • EURFRROLw.d , EURTOROLw.dフォーマット euros from/to Romanian lei put(1,eurtorol10.6) = 13.710000
  • EURFRRURw.d , EURTORURw.dフォーマット euros from/to Russian rubles (変動) put(1,eurtorur10.6) = 19.768000
  • EURFRSEKw.d , EURTOSEKw.dフォーマット euros from/to Swedish kronor (変動) put(1,eurtosek10.6) = 9.365910
  • EURFRSITw.d , EURTOSITw.dフォーマット euros from/to Slovenian from/tolars (変動) put(1,eurtosit10.6) = 191.000000
  • EURFRTRLw.d , EURTOTRLw.dフォーマット euros from/to Turkish liras (変動) put(1,eurtotrl10.6) = 336.912000
  • EURFRYUDw.d , EURTOYUDw.dフォーマット euros from/to Yugoslavian dinars (変動) put(1,eurtoyud10.6) = 13.064400

2バイト文字(DBCS)

  • $KANJIw.フォーマット , $KANJIw.インフォーマット
  • $KANJIXw.フォーマット , $KANJIXw.インフォーマット