public LigneReservation(Date dateArrivee, Date dateDepart,
String categorie, int quantite) {
super();
SimpleDateFormat form = new SimpleDateFormat("yyyy-MM-dd");
try {
this.dateArrivee = form.parse(form.format(dateArrivee));
this.dateDepart = form.parse(form.format(dateDepart));
String s = form.format(dateArrivee);
System.out.print(form.parse(s));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
this.categorie = categorie;
this.quantite = quantite;
}
我是这样调用这个方法的:
ctrlRes.setLigneCourante(ctrlRes.creerLigne(dateArrivee.getDate(),
dateDepart.getDate(), (String)listeCatCh.getSelectedItem(),
Integer.parseInt(champQteCh.getText())));
所以我首先从JDateChooser
字段中提取日期,然后我将它们传递给构造器LigneReservation
,字符串S
显示了我想要的正确格式"yyyy-mm-dd",但是当我将其解析为日期时,它给了我这样的日期:Wed Mar 13 00:00:00 EDT 2013
。我怎样才能改正呢?
谢谢
但是当我将其解析为日期时,它会给我这样的日期:Wed Mar 13 00:00:00 EDT 2013。
当你解析它时,你得到一个Date
。使用Date.toString()
always可以得到相同的格式。
将Date对象转换为形式为
的String对象dow mon dd hh:mm:ss zzz yyyy
如果您想将Date
格式化为特定格式,请使用SimpleDateFormat
。
(或者,使用Joda Time及其解析/格式化工具,它们通常更好——与API的其余部分一样。)