Java 将日历对象更改为字符串
我对将日历更改为字符串有问题。当我运行程序时,日历没有被更改为日期。这是我的代码:Java 将日历对象更改为字符串,java,date,object,calendar,Java,Date,Object,Calendar,我对将日历更改为字符串有问题。当我运行程序时,日历没有被更改为日期。这是我的代码: switch(selection){ case 1: Calendar cal = Calendar.getInstance(); cal.getTime().toString(); LifeTimeMembers lifetime = new LifeTimeMembers(); lifetime.setName(name);
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");
有人能帮帮我吗?我不知道你想要什么,但也许这样可以:
DateFormat dateFormat = new SimpleDateFormat("yyyy-MMM-dd");
dateFormat.setLenient(false);
Date d = cal.getTime();
String dateAsStr = dateFormat.format(d);
cal.getTime().toString()
正在返回一个值,但您没有对其执行任何操作
而是做一些类似的事情
String timeAsString=cal.getTime().toString()
然后在程序中随意使用timeAsString
您可以看到的默认格式。如果您想格式化它,那么请查看该类的文档。首先格式化即将到来的日期
DateFormat dateFormat = new SimpleDateFormat("yyyy-MMM-dd");
Date d=dateFormat.format(cal);
将该日期解析为字符串
String dateAsStr = dateFormat.format(d);
无法理解您的问题。您希望通过cal.getTime().toString()行获得什么;和-setJoinDate的类型是什么?日期?勾选下面的bizmark答案。建议使用Joda Time来处理Java中的日期:我认为像这样简单的事情不需要Joda。为什么要添加另一个依赖项?这就是我在代码中得到的:Join Date:java.util.GregorianCalendar[time=1363959072596,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id=“Europe/Berlin”,offset=3600000,dststavings=3600000,useDaylight=true,transitions=143,lastRule=java.util.SimpleTimeZone[id=Europe/Berlin,offset=3600000,dststavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=1,startDayOfWeek=1,startDayOfWeek=1,startDayOfWeek=1,startDayOfWeek=3600000,startTime=2,endMonth=9,endDayOfWeek=1,endTime=2]],firstDayOfWeek=2,minimadaysInfirstWeek=4,ERA=1…你不需要这些东西。将加入日期设置为java.util.date-这就是你所需要的。为什么这么大惊小怪?