JavaでSimpleDateFormatを使って日付文字列をDateオブジェクトに変換・フォーマットする方法
JavaのSimpleDateFormatクラスは、日付や時刻を指定した形式の文字列として整形(フォーマット)したり、その逆に文字列をDateオブジェクトへ変換(パース)したりできる便利なクラスです。このクラスのコンストラクタの一つは、希望する日付形式を表すString型の値を受け取り、そのパターンに基づいたSimpleDateFormatインスタンスを生成します。
文字列をDateオブジェクトに変換する手順
- 希望するフォーマットパターンの文字列を引数に渡して、SimpleDateFormatクラスをインスタンス化します。
- parse()メソッドを使って、対象の日付文字列をDateオブジェクトとして解析します。
サンプルコード
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Sample {
public static void main(String args[]) throws ParseException {
String date_string = "2007-25-06";
// SimpleDateFormatクラスをインスタンス化
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-dd-MM");
// 指定した文字列をDateオブジェクトとしてパース
Date date = formatter.parse(date_string);
System.out.println("Date value: "+date);
}
}実行結果
Date value: Mon Jun 25 00:00:00 IST 2007
主なパターン文字の意味
コンストラクタに渡すパターン文字列は、以下のような記号で構成されます。
- yyyy:年(例:2007)
- MM:月(例:06)
- dd:日(例:25)
上記の例では「yyyy-dd-MM」というパターンを指定しているため、「2007-25-06」は2007年6月25日として正しく解析されます。なお、parse()メソッドは文字列がパターンと一致しない場合にParseExceptionをスローするため、例外処理が必要になる点に注意してください。
-
【Java入門】SimpleDateFormatクラスでDate型を任意の形式の文字列に変換する方法
JavaのSimpleDateFormatクラスは、Dateオブジェクトを指定したパターンの文字列(String)に変換したり、その逆に文字列からDateへ変換したりするために使用されるクラスです。日付の表示形式を自由にカスタマイズできるため、実務でも非常によく利用されます。SimpleDateFormatの基本的な使い方以下のサンプルコードでは、今日の日付を取得し、「yyyy-MM-dd-hh.mm.ss」というパターンで文字列に変換してコンソールに出力しています。サンプルコードimport java.util.Date; import java.text.SimpleDateFormat;
-
Python 3で辞書を使って文字列をフォーマットする方法
Pythonでは、辞書(dict)を活用して文字列への値の埋め込み(補間)を行うことができます。この構文では、%と変換文字の間の括弧内に、辞書のキー名を指定します。例えば、キーcostに格納された浮動小数点数を$xxxx.xxの形式で表示したい場合は、表示したい位置に$%(cost).2fと記述します。辞書を使った文字列フォーマットの基本例以下は、辞書を使った文字列フォーマットで、文字列と数値を同時に補間・整形する例です。>>> print(%(language)s has %(number)03d quote types. % {language: Python, numb