NLS 関数:現在のロケールの正しく書式化された時刻文字列を返します。
モジュール:USE DFNLS
形式
result = NLSFormatTime ( outstr [, intime ] [, flags ] )
outstr
(出力) CHARACTER*(*)。現在のロケールの正しく書式化された時刻を含む文字列。outstr が書式化された時刻よりも長い場合,空白が充填されます。
intime
(省略可能,入力) INTEGER(4)。指定されていれば,現在のロケールで時刻を書式化します。PACKTIMEQQ で作成される詰め込まれた時刻のような整数時刻でなければなりません。intime を省略すると,現在のシステム時刻が書式化され,outstr に戻されます。
flags
(省略可能,入力) INTEGER(4)。指定されていれば,時刻変換を修正します。flags が省略されると,フラグ NLS$Normal が使われます。利用可能なシンボル定数は以下のとおりです (DFNLS.F90 で定義)。
NLS$Normal - 特別な書式化なし。
NLS$NoUserOverride - ユーザー上書きを使用しない。
NLS$NoMinutesOrSeconds - 分または秒を返しません。
NLS$NoSeconds - 秒を返しません。
NLS$NoTimeMarker - 時刻記号文字を追加しません。
NLS$Force24HourFormat - 24 時間形式で文字列を返します。
結果
結果の型は INTEGER(4) です。結果は,outstr に書き込まれた文字列の文字数 (バイト数でマルチバイト文字ではありません) です。エラーが発生すると,結果は以下の負の値の 1 つです。
NLS$ErrorInsufficentBuffer - outstr バッファが小さすぎます。
NLS$ErrorInvalidFlags - flags が無効な値です。
NLS$ErrorInvalidInput - intime が無効な値です。
互換性
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
関連情報
NLSFormatCurrency,NLSFormatDate,NLSFormatNumber
例
USE DFNLS INTEGER(4) i CHARACTER(40) str i = NLSFORMATTIME(str, flags=NLS$NORMAL) print *, str ! 午後 11:38:28 を印字 i = NLSFORMATTIME(str, flags=NLS$NOMINUTESORSECONDS) print *, str ! 午後 11 を印字 i = NLSFORMATTIME(str, flags=NLS$NOTIMEMARKER) print *, str ! 11:38:28 を印字 i = NLSFORMATTIME(str, flags=IOR(NLS$FORCE24HOURFORMAT,NLS$NOSECONDS)) print *, str ! 午後 23:38 を印字 END