将Calendar对象更改为字符串

时间:2013-03-22 13:11:09

标签: java date object calendar

我在将日历更改为字符串时遇到问题。运行程序时,日历不会更改为日期。这是我的代码:

switch(selection){
    case 1:
        Calendar cal = Calendar.getInstance();
        cal.getTime().toString();
        LifeTimeMembers lifetime = new LifeTimeMembers();
        lifetime.setName(name);
        lifetime.setSurname(surname);
        lifetime.setAddress(address);
        lifetime.setJoinDate(cal);
        members.add(lifetime);
        break;
    case 2:
        cal.add(Calendar.YEAR, 1);
        YearlyMembers yearly = new YearlyMembers(name, surname, address, cal);
        members.add(yearly);
        break;
}
System.out.println("Member added");

有人能帮助我吗?

3 个答案:

答案 0 :(得分:2)

首先格式化即将到来的日期。

DateFormat dateFormat = new SimpleDateFormat("yyyy-MMM-dd");
Date d=dateFormat.format(cal);

将该日期解析为字符串

String dateAsStr = dateFormat.format(d);

答案 1 :(得分:1)

cal.getTime().toString();正在返回一个值,但你没有做任何事情。

而是做类似

的事情

String timeAsString = cal.getTime().toString();,然后在您的计划中使用timeAsString

您可以看到Date.toString()的默认格式。如果要对其进行格式化,请查看DateFormat类的文档。

答案 2 :(得分:0)

我不确定你想要什么,但也许会这样做:

DateFormat dateFormat = new SimpleDateFormat("yyyy-MMM-dd");
dateFormat.setLenient(false);
Date d = cal.getTime();
String dateAsStr = dateFormat.format(d);