5.3.1 初期設定ファイル(config.xml)に指定する日付の形式
日付の表示形式は,ブラウザーの「ロケール設定」によってデフォルトの日付フォーマットが設定されています。
Performance Reporterの場合,ロケール設定に合わせてデフォルトでは次の表に示す表示形式になります。
表5-2 ロケール設定に対応した日付の表示形式(デフォルト状態のPerformance Reporterでの表示)
ロケール設定 | Performance Reporterでの日付の表示形式 |
---|
en_US | MM△dd△yyyy |
en | dd△MM△yyyy |
jaまたはja_JP | yyyy△MM△dd |
上記以外のロケール | dd△MM△yyyy |
- (凡例)
- dd:日
- MM:月
- yyyy:年
- △:区切り文字。デフォルトでは,スペースを示します。
日付の表示形式(年月日の表示順序,区切り文字)は,初期設定ファイル(config.xml)を編集することで変更できます。これによって,ロケール設定に依存しないで表示形式を固定にしたり,特定のロケール設定のときにユーザーが意図する表示形式にしたりできます。
表示形式は,初期設定ファイル(config.xml)のformatタグ内にpattern(年月日の表示順序),separator(区切り文字),localeといったパラメーターを記述することで変更できます。
- この項の構成
- (1) 日付の表示形式のタグ指定
- (2) 日付の表示形式の指定例
(1) 日付の表示形式のタグ指定
日付の表示形式を初期設定ファイル(config.xml)に設定する場合,次の表に示すタグを使用します。
表5-3 日付の表示形式のタグ一覧
タグ | 属性 | 内容 |
---|
format | - | 日付の表示形式を指定するルートタグを示します。 |
locale-format | - | ロケールと,ロケールに対応するパターンおよびセパレーターを定義します。 locale-formatタグ内では,次のタグが使用できます。
- date-format
- locale
- locale-format
localeタグを省略すると,locale-formatタグの指定は無効となります。 |
modify-format | - | 指定したロケールに対応するパターンおよびセパレーターを変更する場合に指定します。 modify-formatタグ内では,次のタグが使用できます。
|
date-format | - | パターンとセパレーターを指定します。formatタグ直下でdate-formatタグとselectFormatタグを両方指定している場合は,date-formatタグの指定が優先されます。 |
pattern | 指定値を次に示します。
- pattern-MMddyyyy
- pattern-ddMMyyyy
- pattern-yyyyMMdd
|
separator | 指定値を次に示します。 指定を省略した場合,次に示すデフォルト値となります。
- formatタグ直下
space
- locale-formatタグ直下
そのlocale-formatタグのベースフォーマットパターンのセパレーター
- modify-formatタグ直下
なし
|
export-separator | 指定値は,separatorと同じです。 |
locale | - | ロケールを指定します。 |
- (凡例)
- -:該当しない
- dd:日
- MM:月
- yyyy:年
(2) 日付の表示形式の指定例
各タグを使用したconfig.xmlの記述例を次に示します。
デフォルトで定義された日付の表示形式の変更
ロケールが「en_US」,「en」,「jaまたはja_JP」以外である場合に適用される日付の表示形式の変更方法を(例1)に示します。
- (例1)
- 日付フォーマットのパターンに「pattern-MMddyyyy」を指定します。
- ロケールが「en_US」,「en」,「jaまたはja_JP」以外の場合,日付は「MM dd yyyy」と表示されます。
<format>
<param name=“selectFormat” value=“pattern-MMddyyyy”/>
</format> |
ロケールに合わせた日付の表示形式の変更
ロケールに適用される日付の表示形式の定義方法を(例1)(例2)に示します。
- (例1)
- ロケールが「en_US」,「en」,「jaまたはja_JP」の場合の日付フォーマットのパターンを「pattern-MMddyyyy」,セパレーターを「slash」として日付の表示形式を定義します。また,ロケールが「en_ZA」の場合の日付フォーマットのパターンを「pattern-yyyyMMdd」として日付の表示形式を定義します。
- ロケールが「en_US」,「en」,「jaまたはja_JP」の場合,日付は「MM/dd/yyyy」と表示されます。
- ロケールが「en_ZA」の場合,日付は「yyyy/MM/dd」と表示されます。なお,セパレーターは,ロケール「en_ZA」で定義していないため,ロケールが「en_US」,「en」,「jaまたはja_JP」で適用されている「slash」が適用されます。
<format>
<data-format pattern=“pattern-MMddyyyy” separator=“slash”/>
<locale-format>
<date-format pattern=“pattern-yyyyMMdd” />
<locale>en_ZA</locale>
</locale-format>
</format> |
- (例2)
- ロケールが「en_US」,「en」,「jaまたはja_JP」の場合の日付フォーマットのパターンを「pattern-MMddyyyy」として日付の表示形式を定義します。また,ロケールが「en_ZA」の場合の日付フォーマットのパターンを「pattern-yyyyMMdd」,セパレーターを「hyphen」,CSV出力時のセパレーターを「slash」として日付の表示形式を定義します。さらにこの定義の中にロケール「ja」を定義します。
- ロケールが「en_US」,「en」,「ja_JP」の場合,日付は「MM dd yyyy」と表示されます。
- ロケールが「en_ZA」の場合,日付は「yyyy-MM-dd」と表示されます。また,CSV出力時の日付は「yyyy/MM/dd」と表示されます。
- ロケールが「ja」の場合,親に当たる「en_ZA」の表示形式と同じになります。
<format>
<date-format pattern=“pattern-MMddyyyy”/>
<locale-format>
<date-format pattern=“pattern-yyyyMMdd”/>
<locale>en_ZA</locale>
<locale-format>
<date-format separator="hyphen"
export-separator="slash"/>
<locale>ja</locale>
</locale-format>
</locale-format>
</format> |
ロケールの定義を重複して定義した場合の動作
ロケールの定義を重複して定義した場合,最後に定義された内容が有効となります。(例1)に示します。
- (例1)
- 最後に定義された内容が有効となり,ロケールが「en_ZA」の場合,日付は「MM/dd/yyyy」と表示されます。
<format>
<date-format pattern=”pattern-MMddyyyy” export-separator=”slash”/>
<locale-format>
<date-format pattern=”pattern-yyyyMMdd”/>
<locale>en_ZA</locale>
<locale-format>
<date-format separator=”hyphen” />
<locale>en_ZA</locale>
</locale-format>
</locale-format>
<locale-format>
<date-format separator=”slash”/>
<locale>en_ZA</locale>
</locale-format>
</format> |
定義済みの日付フォーマットのパターンを利用した差分変更
modify-formatタグを指定することで,定義済みの日付フォーマットのパターンからの差分変更ができます。定義方法を(例1)から(例3)に示します。
- (例1)
- ロケールが「en_US」,「en」,「jaまたはja_JP」の場合のCSV出力時のセパレーターを「slash」として定義します。
- ロケールが「en_US」,「en」,「jaまたはja_JP」の場合,日付の表示形式はそれぞれで定義された形式(「表5-2 ロケール設定に対応した日付の表示形式(デフォルト状態のPerformance Reporterでの表示)」を参照)で表示されますが,CSV出力時の区切り文字は「/」で統一されます。
<format>
<modify-format>
<date-format export-separator=“slash”/>
</modify-format>
</format> |
- (例2)
- ロケールが「en」,「ja」,「de」の場合のCSV出力時のセパレーターを「slash」として定義します。
- この場合,ロケールが「en」,「ja」の場合,定義が有効になりますが,「de」の場合,定義されていないロケールのため,定義が無視されます。
<format>
<modify-format>
<date-format export-separator=“slash”/>
<locale>ja</locale>
<locale>en</locale>
<locale>de</locale>
</modify-format>
</format> |
- (例3)
- ロケールが「en」,「ja」,「de」の場合のCSV出力時のセパレーターを「slash」として定義します。また,ロケールが「ja」の場合のセパレーターを「hyphen」と定義します。
- この場合,順に定義内容が上書きされ,ロケールが「ja」の場合,日付の表示形式は「yyyy-MM-dd」となり,CSV出力時には「yyyy/MM/dd」となります。また,ロケールが「en」の場合,日付の表示形式は「表5-2 ロケール設定に対応した日付の表示形式(デフォルト状態のPerformance Reporterでの表示)」のとおり「dd MM yyyy」で,CSV出力時には定義したとおり「dd/MM/yyyy」となります。なお,ロケールが「de」の場合,定義されていないロケールのため,定義が無視されます。
<format>
<modify-format>
<date-format export-separator=“hyphen”/>
<locale>ja</locale>
<locale>en</locale>
<locale>de</locale>
</modify-format>
</format> |