日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第 1 章:概要
第 2 章:ロケールファイルの形式
第 3 章:文字セット記号ファイル
第 4 章:コマンド・リファレンス
 ≫ GENCAT
 ≫ ICONV COMPILE
 ≫ ICONV CONVERT
 ≫ LOCALE COMPILE
 ≫ LOCALE LOAD
 ≫ LOCALE UNLOAD
 ≫ LOCALE SHOW CHARACTER_DEFINITIONS
 ≫ LOCALE SHOW CURRENT
 ≫ LOCALE SHOW PUBLIC
 ≫ LOCALE SHOW VALUE
 ≫ zic
付録 A:日本語ロケール
索引
PDF
OpenVMS ホーム

HP OpenVMS
HP C 国際化ユーティリティ・リファレンス・マニュアル


目次 索引



LC_TIME カテゴリは,日付/時刻情報を書式化する上での規則および記号を定義します。このカテゴリは LC_TIME ヘッダではじまり, END LC_TIME トレーラで終了します。

LC_TIME カテゴリ・キーワードに対するオペランドはすべて,文字列または整数値として定義されます。文字列値は,二重引用符(")で囲まれます。値はすべて,1つ以上の空白文字(スペースまたはタブ)により,定義しているキーワードと区切られます。二重引用符が2つ並んでいる場合("")は,未定義の文字列値を示します。なお,LC_TIMEカテゴリを照会して,日付/時刻形式の要素を表すコマンドおよびサブルーチンは,フィールド記述子を使用します。このフィールド記述子については,後で説明します。

2.7.1 キーワード

表 2-7 は, LC_TIME カテゴリで認識される文キーワードの一覧です。

表 2-7 LC_TIME カテゴリ・キーワード
キーワード 説明
copy このカテゴリの定義として使用する,既存のロケール名を指定する。

copy文を指定すると,他のキーワードは指定できない。

abday %aフィールド記述子に対応する,曜日の短縮名を定義する。

認識される値は,セミコロンで区切られた7つの文字列で構成される。最初の文字列が週の最初の曜日の短縮名(Sun), 2 番目の文字列が週の 2 番目の曜日の短縮名,以降についても同様に対応する。

day %Aフィールド記述子に対応する,曜日の完全名を定義する。

認識される値は,セミコロンで区切られた 7 つの文字列で構成される。最初の文字列が週の最初の曜日の完全名(Sunday), 2 番目の文字列が週の 2 番目の曜日の完全名,以降についても同様に対応する。

abmon %b フィールド記述子に対応する,月の短縮名を定義する。

認識される値は,セミコロンで区切られた 12 個の文字列で構成される。最初の文字列が最初の月の短縮名(Jan),2 番目の文字列が2番目の月の短縮名,以降についても同様に対応する。

mon %B フィールド記述子に対応する,月の完全名を定義する。

認識される値は,セミコロンで区切られた 12 個の文字列で構成される。最初の文字列が最初の月の完全名 (January) ,2 番目の文字列が2番目の月の完全名,以降についても同様に対応する。

d_t_fmt %cフィールド記述子に対応する,標準の日付/時刻形式に使用される文字列を定義する。文字列には,文字とフィールド記述子の任意の組み合わせを指定できる。
d_fmt %x フィールド記述子に対応する,標準の日付形式に使用される文字列を定義する。文字列には,文字とフィールド記述子の任意の組み合わせを指定できる。
t_fmt %X フィールド記述子に対応する,標準の時刻形式に使用される文字列を定義する。文字列には,文字とフィールド記述子の任意の組み合わせを指定できる。
am_pm %p フィールド記述子に対応する, a.m. (午前)および p.m. (午後)を表すのに使用される文字列を定義する。

認識される値は,セミコロンで区切られた 2 つの文字列で構成される。最初の文字列が a.m. 指定,2 番目の文字列が p.m. 指定に対応する。

t_fmt_ampm am_pm 値 ( %p フィールド記述子 ) を含む,標準の 12 時間表示の時刻形式に使用される文字列を定義する。

この文は,%r フィールド記述子に対応する。文字列には,文字列とフィールド記述子の任意の組み合わせが指定できる。文字列が空の場合,12 時間形式がロケールでサポートされることはない。

era ロケールにおける,年の数えかた,および各年号での表示のしかたを定義する。これは,%E フィールド記述子に対応する。

年号ごとに,次の形式で1つの文字列を指定する必要がある。

direction:
offset:
start_date:
end_date:
name:
format

年号文字列編集形式の変数は,次のように定義される。

  • direction --- マイナス (-) またはプラス (+) 文字を指定する。

    マイナス文字 (-) は,開始日付から終了日付に向かって,負の方向で年を数えることを指定する。これに対してプラス文字(+)は,開始日付から終了日付に向かって,正の方向で年を数えることを指定する。

  • offset --- %Eyフィールド記述子に対応する,年号の最初の年を表す数値を指定する。

  • start_date --- 年号の開始日付を yyyy/mm/dd の形式で指定する。ここで yyyy,mm,dd は,グレゴリオ暦の年,月,日にそれぞれ相当する。

    A.D. 1 より以前の年は,負の値で表される。たとえば,100 B.C. の 3 月 5 日からはじまる年号は,-100/03/05 で表される。

  • end_date --- 年号の最終日付を, start_date 変数の場合と同じ形式,あるいは -* または +* という特殊値のいずれかで指定する。

    -* 値は,年号の最終日付が時の起源に向かって逆方向に進むことを表す。これに対して +* 値は,年号の最終日付が順方向に進むことを表す。従って,最終日付は,年代順で,年号の開始日付の前でも後でも構わない。たとえば,西暦 A.D. および B.C. に対する文字列は,それぞれ次のように入力する。

     +:0:0000/01/01:+*:AD:%Ey %EC
    
    +:1:-0001/12/31:-*:BC:%Ey %EC

  • name --- %EC フィールド記述子に置き換えられる,年号の名前を表す文字列を指定する。

  • format --- %EY フィールド記述子を書式化するときに使用する, strftimestrptime,および wcsftime 編集形式文字列を指定する。

    この文字列には,任意の strftimestrptime,および wcsftime 書式制御文字 ( %EY を除く ),およびロケールに依存するマルチバイト文字を指定できる。


年号値は,年号ごとに引用符で囲まれた 1 つの文字列で構成される。複数の年号を指定する場合,各年号文字列はセミコロン (;) で区切る。

era_d_fmt %Ex フィールド記述子に対応する,代替年号形式の日付を表すのに使用される文字列を定義する。文字列には,文字とフィールド記述子の任意の組み合わせを指定できる。
era_t_fmt strftimestrptime,および wcsftime に対して,%EX フィールド記述子で表される,ロケールの代替時刻形式を定義する。
era_d_t_fmt strftimestrptime,および wcsftime に対して,%Ec フィールド記述子で表される,ロケールの代替日付/時刻形式を定義する。
alt_digits %O フィールド記述子に対応する,数値用の代替文字列を定義する。

認識される値は,セミコロンで区切られた文字列のグループで構成される。先頭の文字列が0 (ゼロ)の代替文字列,2 番目の文字列が 1 の代替文字列,以降についても同様に対応する。最大で 100 個の代替文字列を指定できる。



2.7.2 フィールド記述子

LC_TIME ロケール定義ソース・ファイルは,フィールド記述子を使用して,日付/時刻形式の要素を表します。これらのフィールド記述子を組み合わせて,別のフィールド記述子を作成したり,日付/時刻形式文字列を作成することができます。フィールド記述子と他の文字を含む書式化文字列で使用される場合,フィールド記述子は,その現在の値で置き換えられます。他の文字はすべて,変更されることなくコピーされます。 表 2-8 は,時刻を書式化するときに LC_TIME カテゴリを照会するコマンドおよびサブルーチンによって使用される,フィールド記述子の一覧です。

表 2-8 LC_TIMEロケール・フィールド記述子
フィールド記述子 内容
%a abday文で定義される曜日の短縮名(Sunなど)を表す。
%A day文で定義される曜日の完全名(Sundayなど)を表す。
%b abmon文で定義される月の短縮名(Janなど)を表す。
%B month文で定義される月の完全名(Januaryなど)を表す。
%c d_t_fmt文で定義される日付/時刻形式を表す。
%C 世紀を10進数(00〜99)で表す。
%d 月のうちの日を10進数(01〜31)で表す。
%D 日付を%m/%d/%yの形式(01/31/91など)で表す。
%e 月のうちの日を10進数(1〜31)で表す。

月のうちの日が2桁の数字でない場合,先頭の桁にはスペース文字が詰められる。

%Ec ロケールに対して,代替の日時表示を指定する。
%EC ロケールの代替表示において,基準となる年(年号)の名前を指定する。
%Ex ロケールに対して,代替の日付表示を指定する。
%Ey ロケールの代替表示において, %EC (年のみ)からのオフセットを指定する。
%EY 完全な代替年表示を指定する。
%h abmon文で定義される月の短縮名(Janなど)を表す。このフィールド記述子は,%bフィールド記述子の機能に等しい。
%H 24時間形式の時刻を10進数(00〜23)で表す。
%I 12時間形式の時刻を10進数(01〜12)で表す。
%j 年間通算日を10進数(001〜366)で表す。
%m 月を10進数(01〜12)で表す。
%M 分を10進数(00〜59)で表す。
%n 改行文字を指定する。
%Od 月のうちの日を,ロケールの代替数値シンボルで指定する。
%Oe 月のうちの日を,ロケールの代替数値シンボルで指定する。
%OH 時間(24時間形式)を,ロケールの代替数値シンボルで指定する。
%OI 時間(12時間形式)を,ロケールの代替数値シンボルで指定する。
%Om 月をロケールの代替数値シンボルで指定する。
%OM 分をロケールの代替数値シンボルで指定する。
%OS 秒をロケールの代替数値シンボルで指定する。
%OU 年頭からの週数(日曜日を週の最初の曜日とする)を,ロケールの代替数値シンボルで指定する。
%Ow 曜日をロケールの代替表示の番号で指定する(Sunday = 0)。
%OW 年頭からの週数(月曜日を週の最初の曜日とする)を,ロケールの代替数値シンボルで指定する。
%Oy 年(%Cからのオフセット)を,ロケールの代替数値シンボルで指定する。
%p am_pm文で定義される a.m.またはp.m.文字列を表す。
%r t_fmt_ampm文で定義される a.m./p.m.表記を伴う12時間形式の時刻を表す。
%S 秒を10進数(00〜59)で表す。
%t タブ文字を指定する。
%T 24時間形式の時刻を%H:%M:%S (16:55:15など)の形式で表す。
%U 年頭からの週数を10進数(00〜53)で表す。

日曜日,または day文で定義される曜日を週の最初の曜日として,このフィールド記述子の値が計算される。

%w 曜日を10進数(0〜6)で表す。

日曜日,または day文で定義される曜日を0 (ゼロ)として,このフィールド記述子の値が計算される。

%W 年頭からの週数を10進数(00〜53)で表す。

月曜日,または day文で定義される曜日を週の最初の曜日として,このフィールド記述子の値が計算される。

%x d_fmt文で定義される日付形式を表す。
%X t_fmt文で定義される時刻形式を表す。
%y 世紀の年(00〜99)を表す。
%Y 年を10進数(1989など)で表す。
%% % (パーセント記号)文字を指定する。



2.7.3 ロケール定義のサンプル

ロケール定義ソース・ファイルに指定される LC_TIME カテゴリのサンプルを次に示します。

LC_TIME 
# 
#Abbreviated weekday names (%a) 
abday   "<S><u><n>";"<M><o><n>";"<T><u><e>";"<W><e><d>";\
        "<T><h><u>";"<F><r><i>";"<S><a><t>" 
 
#Full weekday names (%A) 
day     "<S><u><n><d><a><y>";"<M><o><n><d><a><y>";\
        "<T><u><e><s><d><a><y>";"<W><e><d><n><e><s><d><a><y>";\
        <T><h><u><r><s><d><a><y>";"<F><r><i><d><a><y>";\
        <S><a><t><u><r><d><a><y>" 
 
#Abbreviated month names (%b) 
abmon   "<J><a><n>";"<F><e><b>";"<M><a><r>";"<A><P><r>";\
        "<M><a><y>";"<J><u><n>";"<J><u><l>";"<A><u><g>";\
        <S><e><P>";"<O><c><t>";"<N><o><v>";"<D><e><c>" 
 
#Full month names (%B) 
mon     "<J><a><n><u><a><r><y>";"<F><e><b><r><u><a><r><y>";\
        "<M><a><r><c><h>";"<A><P><r><i><l>";"<M><a><y>";\
        <J><u><n><e>";"<J><u><l><y>";"<A><u><g><u><s><t>";\
        "<S><e><P><t><e><m><b><e><r>";"<O><c><t><o><b><e><r>";\
        <N><o><v><e><m><b><e><r>";"<D><e><c><e><m><b><e><r>" 
 
#Date-and-time format (%c) 
#Note that for improved readability, this section uses actual 
#characters, rather than symbolic names, and is inconsistent with 
#the other sections in this example.  This is bad form. 
#In practice, symbolic names should be used. 
d_t_fmt         "%a %b %d %H:%M:%S %Y" 
# 
#Date format (%x) 
d_fmt           "%m/%d/%y" 
# 
#Time format (%X) 
t_fmt           "%H:%M:%S" 
# 
#Equivalent of AM/PM (%p) 
am_pm           "<A><M>";"<P><M>" 
# 
#12-hour time format (%r) 
#Note that for improved readability, this section uses actual 
#characters, rather than symbolic names, and is inconsistent with 
#the other sections in this example.  This is bad form. 
#In practice, symbolic names should be used. 
t_fmt_ampm      "%I:%M:%S %p" 
# 
era             "+:0:0000/01/01:+*:AD:%Ey %EC";\
"+:1:-0001/12/31:-*:BC:%Ey %EC" 
era_d_fmt     "" 
alt_digits    "<0><t><h>";"<1><s><t>";"<2><n><d>";"<3><r><d>";\
              "<4><t><h>";"<5><t><h>";"<6><t><h>";"<7><t><h>";\
              "<8><t><h>";"<9><t><h>";"<1><0><t><h>" 
# 
END LC_TIME 


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.