日付のフォーマット日付をフォーマットする方法の主なものはString.format、printf、及びJavaのSimpleDateFormat辺りだろう。これらのうち、どれを使ってもJavaの書式指示子、フォーマットパターンが利用できる。用途に応じて使い分けよう。 ここではDateをフォーマットしてみる。まずは普通にStringのformatを使った日付のフォーマットである。%t書式指示子の後に続けてY、H等の変換文字を指定する。%<tm以降の書式指示子にある<は、以前の書式指示子の引数を再利用するフラグである。つまり、以下の書式指示子はすべて同じ引数(new Date)を変換している。 println(f"現在日時: ${"%ty/%<tm/%<td %<tH:%<tM:%<tS" format new Date}") 年はあるミドルウェアのログ出力に合わせて2ケタとしてみた。4ケタにする場合は%ty→%tYにすれば良い。 現在日時: 14/06/17 21:35:35 次に、表示に特化した場合はprintfが使える。printfの書式指定子はString.formatと同じである。 printf("現在日時: %ty/%<tm/%<td %<tH:%<tM:%<tS%n", new Date) 最後はJavaのSimpleDateFormat。いくつものDateをフォーマットする必要がある場合、これが一番簡単かもしれないし、更にフォーマットパターンも分かりやすい。 val df = new SimpleDateFormat("yy/MM/dd HH:mm:ss") println(f"現在日時: ${df.format(new Date)}") 尚、Dateを利用する場合はjava.util.Date、SimpleDateFormatを利用する場合はjava.text.SimpleDateFormatをそれぞれimportするか、またはクラス名をフルパスで指定する必要がある。 (2014/06/17)
Copyright© 2004-2018 モバイル開発系(K) All rights reserved.
[Home]
|