1) DateFormat クラスを使用します:
public String toString(Date d) { SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”); return sdf.format(d);
}
2) String.format() メソッドを使用します。
String.format()的用法类似于C语言的printf,C语言转JAVA的同学一定会喜欢这个方式的。 public static String toString(Date d) { String format = “%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS”; return String.format(format, d); }
次の書式文字列の説明
"%1$tY" % はエスケープを意味し、その後の "1$tY" は書式の説明であり、実行時に置き換えられ、通常の文字として出力されません。パラメーター
は複数回フォーマットされる可能性があるため、「1$」は最初のパラメーターをフォーマットすることを意味し、「tY」は時刻の年フィールドをフォーマットすることを意味し、その後、「%1$tY」は
の値を出力します。 d の年 (2014 など)、および類推により、「%1$tm」は月を出力します。
具体的なフォーマット手順については、java.util.Formatter クラスの Javadoc を参照してください。
3) カレンダーを使用して自分で書式設定します
public static String toString(Date d) { Calendar c = Calendar.getInstance(); c.setTime(d); int year = c.get(Calendar.YEAR); int month = c.get(Calendar.MONTH) + 1; int dayInMonth = c.get(Calendar.DAY_OF_MONTH); int hour = c.get(Calendar.HOUR_OF_DAY); int minute = c.get(Calendar.MINUTE); int seconds = c.get(Calendar.SECOND); String ret = String.valueOf(year); ret += “-”; ret += month < 10 ? “0″ + month : String.valueOf(month); ret += “-”; ret += dayInMonth < 10 ? “0″ + dayInMonth : String.valueOf(dayInMonth); ret += ” “; ret += hour < 10 ? “0″ + hour : String.valueOf(hour); ret += “:”; ret += minute < 10 ? “0″ + hour : String.valueOf(minute); ret += “:”; ret += seconds < 10 ? “0″ + hour : String.valueOf(seconds); return ret; }
コードは非常にシンプルですが、車輪の再発明のようなものです。
以上がJavaの日付をフォーマットする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。