クラス | 説明 |
---|---|
java.sql.Date | SQLのDATE型 |
java.text.SimpleDateFormat | 日付と時刻のフォーマット(書式)を扱うクラス |
java.util.Calendar | 暦を表すクラス |
java.util.Date | 日付と時刻を表すクラス |
java.util.Dateは、日付と時刻を表すクラスであり、ミリ秒単位の精度を持つ。
SQLのDATE型はjava.sql.Dateであり、java.util.Dateとは異なる。
コンストラクタ | 説明 |
---|---|
Date() | Dateオブジェクトを作成し、現在の日付と時刻で初期化する。 |
Date(long date) | Dateオブジェクトを作成し、指定した日時(1970年1月1日 00:00:00からのミリ秒数)で初期化する。 |
メソッド | 説明 |
---|---|
getTime | 1970年1月1日 00:00:00 GMTからのミリ秒を返す。 |
java.util.Date now = new java.util.Date();
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy'年'MM'月'dd'日'");
System.out.println(sdf.format(now));
String型をCalendar型に変換する。
String date = "2017年06月14日";
Calendar calendar = Calendar.getInstance();
try {
calendar.setTime(new SimpleDateFormat("yyyy年MM月dd日").parse(date));
} catch (ParseException e) {
e.printStackTrace();
}
Calendar型をString型に変換する。
Calendar now = Calendar.getInstance();
String tody = new SimpleDateFormat("yyyy年MM月dd日").format(now.getTime());
1日後
Calendar now = Calendar.getInstance();
now.add(Calendar.DATE, 1);
1日前
Calendar now = Calendar.getInstance();
now.add(Calendar.DATE, -1);
1か月後
Calendar now = Calendar.getInstance();
now.add(Calendar.MONTH, 1);
1か月前
Calendar now = Calendar.getInstance();
now.add(Calendar.MONTH, -1);
1年後
Calendar now = Calendar.getInstance();
now.add(Calendar.YEAR, 1);
1年前
Calendar now = Calendar.getInstance();
now.add(Calendar.YEAR, -1);
月初(1日)の日付を求める
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
月末の日付を求める
Calendar calendar = Calendar.getInstance();
int max = calendar.getActualMaximum(Calendar.DATE);