日历日期转换为字符串?(converting a calendar date to a string

2019-10-18 03:13发布

我试图让程序调用当前日期,加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);

Answer 1:

而问题是什么?

如果您想格式化你的日期,我建议在看java.text.SimpleDateFormat ,而不是使用toString() 你可以这样做:

SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
dueDateStr = dateFormat.format(dueDate); // renders as 11/29/2009


Answer 2:

你几乎有它:

Date dueDate = cal.getTime();
String dueDateAsString = dueDate.toString();

要么

String dueDateAsFormattedString = DateFormat.format(dueDate);


Answer 3:

您可能要考虑使用FastDateFormat从阿帕奇百科全书,而不是SimpleDateFormat的,因为SimpleDateFormat的是不是线程安全的。

FastDateFormat dateFormat = FastDateFormat.getInstance("MM/dd/yyyy");
dueDateStr = dateFormat.format(dueDate);

如果你想使用的日期格式,这是一种常见的诱惑的静态实例尤其如此。



Answer 4:

你可以用一类矿井容易做到这一点: https://github.com/knyttl/Maite/wiki/Maite-Date-and-Time

new Time()
    .plus(1, Time.DAY)
    .format("yyyy-MM-dd");


文章来源: converting a calendar date to a string?