# 数値書式（システム書式）

マニュアル > コントロールリファレンス > 数値書式 > # 数値書式（システム書式） |

システム書式について

本頁では、数値書式の「システム書式」に関する仕様について解説します。

数値書式のシステム書式とは、FA-Panelのシステム内部であらかじめ用意されている数値書式です。

システム書式として用意されているものは以下のとおりです。

（システム書式の種類）

種別 | 数値書式名 | 内容
デフォルト書式 | @NUMBER | あらかじめ用意されているデフォルト書式です（推奨）。本書式は内部的に@LOCALEの全プロパティを継承した書式設定となっており、ユーザー書式によるカスタマイズが行われない限り、@LOCALEと同等の動作となります。
ANSI書式 | @ANSI | 標準書式（@ANSI）は、ロケールに影響されない世界共通の書式です。 @ANSIの場合、小数点文字はピリオド「.」、区切り文字は３ケタ毎にカンマ「,」で表示。 例）@ANSI　　12345.678 例）@ANSI.S　　12,345.678
ISO書式 | @ISO | 標準書式（@ISO）は、ロケールに影響されない世界共通の書式です。 @ISOは小数点文字はカンマ「,」で、区切り文字は３ケタ毎にスペースで表示。 例）@ISO 12345,678 例）@ISO.S 12 345,678
地域書式（自動切替） | @LOCALE | 本書式を指定すると、Localeルートプロパティ（もしくはLocaleNumberルートプロパティ）に設定されたロケール設定に従った動作となります。
地域書式（固定） | @ja、@en、@de など | 本書式は、Localeルートプロパティの設定に関わらず、各国固有の書式を直接指定したい場合に使用します。指定方法としては、「@」の後ろに、ja（日本） や de（ドイツ）のような、各国を示すロケールIDを用いて指定します。
２進数書式 | @BIN | 数値を２進数で表示するための書式です。
８進数書式 | @OCT | 数値を８進数で表示するための書式です。
１６進数書式 | @HEX | 数値を１６進数で表示するための書式です。

尚、数値書式にシステム書式を用いて指定する場合、「@NUMBER」などの数値書式名の末尾に任意のオプションを付与して指定することができます。

オプションを付与することでより細かな動作を定義することが可能となります。

例）OSの言語設定が日本語かつ、rootのLocaleプロパティが"DEFAULT"の場合

@NUMBER ・・・ 12345.678

@NUMBER.2 ・・・ 12345.68　　　※小数点桁数２桁

@NUMBER.2S ・・・ 12,345.68　　　※小数点桁数２桁でセパレータ「,」が付加される

@NUMBER<H=ABC> ・・・ ABC12345.678　※プロパティでヘッダを付加した例

オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

デフォルト書式（@NUMBER）

書式 : @NUMBER[.オプション書式]<プロパティ書式>

デフォルト書式（@NUMBER）は、内部的に@LOCALEの仕様を継承した書式設定となっており、ユーザー書式の定義によるカスタマイズ（NumberFormatConfルートプロパティによる上書き）が行われない限り、@LOCALEと同等の動作となります。

数値書式の指定例 | 表示例
@NUMBER | 12345.678
@NUMBER.2 | 12345.68
@NUMBER.2S | 12,345.68
@NUMBER.2SP | +12,345.68

※上記の表示例は、OSの言語設定が日本語かつ、rootのLocaleプロパティが"DEFAULT"の場合の例です。

※上記の指定例は一例です。他のオプションを指定することで、様々な書式に対応できます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

| @NUMBERと@LOCALEは初期の状態としては全く同じように動作しますが、ユーザーカスタマイズを想定して、あえて別々の書式として用意されています。例えば、@NUMBERは部品ライブラリや画面ライブラリからも共通的に利用されており、数値の表示を全体で一括で変更したい場合にはNumberFormatConfルートプロパティの定義で@NUMBERの定義をカスタマイズすることにより、全体の動作をまとめて変更できるようにするためです。何か特別な理由がない限り、ユーザー側で使用する日時書式の指定には@NUMBERの使用を推奨します。 NumberFormatConfによる@NUMBERのカスタマイズの詳細については「数値書式（ユーザー書式）」を参照してください。

| FA-Panelの場合、Panel Editorで表示されるバインドダイアログから、数値書式の定義が実際にどのように動作するのかを簡易的に知ることができます。 以下は、書式に「@NUMBER.2S」と設定した例です。 ※簡易的なテストのため、一部のオプションについてはテスト結果が表示されない場合があります。

| 書式を指定する際に複数のプロパティを指定する方法として、<プロパティ1=設定値;プロパティ2=設定値;プロパティ3=設定値>のようにプロパティ単位でセミコロンで区切る方法の他に、<プロパティ1=設定値><プロパティ2=設定値><プロパティ3=設定値>・・・のように、<>の組を列挙して指定することもできます。 尚、<>の組を列挙する場合、<>と<>の間には文字を入れないようにしてください（スペースも不可）。

ANSI書式（@ANSI）

書式 : @ANSI[.オプション書式]<プロパティ書式>

標準書式（@ANSI）は、ロケールに影響されない世界共通の書式です。

@ANSIでは、小数点文字はピリオド「.」、区切り文字は３ケタ毎にカンマ「,」区切りで表示されます。

数値書式の指定例 | 表示例
@ANSI | 12345.678
@ANSI.2 | 12345.68
@ANSI.2S | 12,345.68

※上記の表示例は、OSの言語設定やrootのLocaleプロパティ（もしくはLocaleNumberプロパティ）の設定に関係なく、同様に表示されます。

※@ANSIについてもオプションを指定することができます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

ISO書式（@ISO）

書式 : @ISO[.オプション書式]<プロパティ書式>

標準書式（@ISO）は、ロケールに影響されない世界共通の書式です。

@ISOでは、小数点文字はカンマ「,」、区切り文字は３ケタ毎にスペース区切りで表示されます。

数値書式の指定例 | 表示例
@ISO | 12345,678
@ISO.2 | 12345,68
@ISO.2S | 12 345,68

※上記の表示例は、OSの言語設定やrootのLocaleプロパティ（もしくはLocaleNumberプロパティ）の設定に関係なく、同様に表示されます。

※@ISOについてもオプションを指定することができます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

地域書式（自動切替）（@LOCALE）

書式 : @LOCALE[.オプション書式]<プロパティ書式>

地域書式（自動切替）は、Localeルートプロパティ（もしくはLocaleNumberルートプロパティ）に設定されたロケール設定に従った動作となります。

例えば、Localeルートプロパティ（もしくはLocaleNumberルートプロパティ）に「DEFAULT」を設定した場合、OSの設定に従った表示となります。

あるいは、Localeルートプロパティ（もしくはLocaleNumberルートプロパティ）に「en」を設定した場合、OSの設定に関係なく「en」（英語）での表示となります。

数値書式の指定例 | 表示例
@LOCALE | 12345.678
@LOCALE.2 | 12345.68
@LOCALE.2S | 12,345.68

※上記の表示例は、OSの言語設定が日本語かつ、rootのLocaleプロパティ（もしくはLocaleNumberルートプロパティ）が"DEFAULT"の場合の例です。

※@LOCALEについてもオプションを指定することができます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

地域書式（固定）（@ja、@en など）

書式 : @[ロケールID][.オプション書式]<プロパティ書式>

地域書式（固定）は、ja（日本）、en（英語）、de（ドイツ）、のような、各国の地域を表す「ロケールID」を用いてロケールを直接指定します。

Localeルートプロパティ（もしくはLocaleNumberルートプロパティ）の設定やOSの設定とも関係なく、指定したロケールIDの地域の仕様で表示されます。

数値書式の指定例 | 表示例
@ja | 12345.678
@ja.2 | 12345.68
@ja.2S | 12,345.68
@de | 12345,678
@de.2 | 12345,68
@de.2S | 12.345,68

※上記で指定可能なロケールIDに関する詳細は、「ロケールIDについて」を参照してください。

※地域書式（固定）についてもオプションを指定することができます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

２進数書式（@BIN）

書式 : @BIN[.オプション書式]<プロパティ書式>

２進数書式（@BIN）は、数値を２進数で表示するための書式です。

数値書式の指定例 | 表示例
@NUMBER | 65535
@BIN | 1111111111111111
@BIN.L16S8 | 11111111 11111111
@BIN.L32S4 | 0000 0000 0000 0000 1111 1111 1111 1111
@BIN.L32S8 | 00000000 00000000 11111111 11111111
@BIN.L32S16 | 0000000000000000 1111111111111111

※２進数書式（@BIN）についてもオプションを指定することができます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

８進数書式（@OCT）

書式 : @OCT[.オプション書式]<プロパティ書式>

８進数書式（@OCT）は、数値を８進数で表示するための書式です。

数値書式の指定例 | 表示例
@NUMBER | 65535
＠OCT | 177777
@OCT.S4 | 17 7777
@OCT.S3L12 | 000 000 177 777

※８進数書式（@OCT）についてもオプションを指定することができます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。

１６進数書式（@HEX）

書式 : @HEX[.オプション書式]<プロパティ書式>

１６進数書式（@HEX）は、数値を１６進数で表示するための書式です。

数値書式の指定例 | 表示例
@NUMBER | 4294967295
@HEX | FFFFFFFF
@HEX.L16 | 00000000FFFFFFFF
@HEX.L16S4 | 0000 0000 FFFF FFFF
@HEX.L16S8 | 00000000 FFFFFFFF

※１６進数書式（@HEX）についてもオプションを指定することができます。オプションに関する詳細は「数値書式のオプションとプロパティ」を参照してください。