我使用String Time =
java.util.GregorianCalendar[time=?,areFieldsSet=false,areAllFieldsSet=true,lenient=true,zone=java.util.SimpleTimeZone[id=GMT,offset=0,dstSavings=3600000,useDaylight=false,startYear=0,startMode=0,startMonth=0,startDay=0,startDayOfWeek=0,startTime=0,startTimeMode=0,endMode=0,endMonth=0,endDay=0,endDayOfWeek=0,endTime=0,endTimeMode=0],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2018,MONTH=2,WEEK_OF_YEAR=12,WEEK_OF_MONTH=4,DAY_OF_MONTH=22,DAY_OF_YEAR=81,DAY_OF_WEEK=5,DAY_OF_WEEK_IN_MONTH=4,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=0,DST_OFFSET=0]
方法将Gregorian Calendar转换为String,以上传我的DataBase。 (因为我的数据库不适用日历类型)
这里是例子。
Select
如何将其解析为日历类型? 如果你们能提供帮助,我们将非常感激。
答案 0 :(得分:1)
像这样使用SimpleDateFormat。
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH,23); (etc)
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = simpleDateFormat.format(calendar.getTime());
答案 1 :(得分:0)
不保存Calendar的字符串表示形式。将时间戳保存为Long。
这是一个例子:
Calendar cal1 = GregorianCalendar.getInstance();
long timeStamp = cal1.getTimeInMillis();
Calendar cal2 = GregorianCalendar.getInstance();
cal2.setTimeInMillis(timeStamp);
答案 2 :(得分:0)
好吧,您可以将GregorianCalendar
毫秒保存在long
类型的数据库中。这是你如何做到的:
long millis = GregorianCalendar.getInstance().getTimeInMillis();
当你想要应用程序中的GregorianCalendar
实例时,只需从数据库中获取millis并将这些millis添加到GregorianCalendar
实例中,如下所示:
GregorianCalendar gregorianCalendar = (GregorianCalendar) GregorianCalendar.getInstance();
gregorianCalendar.setTimeInMillis(millis);