我试图让程序调用当前日期,加30天,然后进行把该日期作为字符串。
// Set calendar for due date on invoice gui
Calendar cal = Calendar.getInstance();
// Add 30 days to the calendar for the due date
cal.add(Calendar.DATE, 30);
Date dueDate = cal.getTime();
dueDatestr = Calendar.toString(dueDate);
而问题是什么?
如果您想格式化你的日期,我建议在看java.text.SimpleDateFormat
,而不是使用toString()
你可以这样做:
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
dueDateStr = dateFormat.format(dueDate); // renders as 11/29/2009
你几乎有它:
Date dueDate = cal.getTime();
String dueDateAsString = dueDate.toString();
要么
String dueDateAsFormattedString = DateFormat.format(dueDate);
您可能要考虑使用FastDateFormat从阿帕奇百科全书,而不是SimpleDateFormat的,因为SimpleDateFormat的是不是线程安全的。
FastDateFormat dateFormat = FastDateFormat.getInstance("MM/dd/yyyy");
dueDateStr = dateFormat.format(dueDate);
如果你想使用的日期格式,这是一种常见的诱惑的静态实例尤其如此。
你可以用一类矿井容易做到这一点: https://github.com/knyttl/Maite/wiki/Maite-Date-and-Time
new Time()
.plus(1, Time.DAY)
.format("yyyy-MM-dd");