日付フォーマッタを使用して文字列型の日付をフォーマットすることは可能ですか? 日付と時刻を文字列として Event クラスに格納したいので、MYSQL データベースからロードされた文字列 (DATE 型と TIME 型を使用) を Date 型に戻す必要がなくなり、新しい Event に格納できるようになります。オブジェクト。YYYY-MM-DD
MySQL は DATE の形式と TIMEの形式のみを受け入れますHH:MM:SS
が、プログラムで出力するときにこれらを異なる形式にしたいと考えています。
このコードを実行すると、Cannot format given Object as a Date at java.text.DateFormat.format(Unknown Source)
エラーが発生します。parse() を使用しようとすると、日付のみを受け入れるため、コンパイルされません。
メインクラス
public Main() {
ArrayList<Event> events = new ArrayList<Event>();
private SimpleDateFormat timeFormat = new SimpleDateFormat("HH:MM:SS");
private SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY-MM-DD");
//Stores current time and date
Date date;
Date time;
String d = "";
String t = "";
d= dateFormat.parse(date);
t= timeFormat.parse(time);
events.add(d, t);
//Print out newly formatted date and time when loaded from mysql
System.out.println(events.get(0).printDate());
System.out.println(events.get(0).printTime());
}
イベントクラス
public class Event {
private String date;
private String time;
public Event(String d, String t) {
date = d;
time = t;
}
public String printDate() {
SimpleDateFormat format = new SimpleDateFormat("DD/MM/YYYY");
String newDate = format.format(date);
return newDate;
}
public String printTime() {
SimpleDateFormat format = new SimpleDateFormat("HH:mm");
String newTime = format.format(time);
return newTime;
}
}