【发布时间】:2012-01-28 06:07:05
【问题描述】:
在 Android 中,每个事件的日期(例如生日和纪念日)都以字符串格式保存,例如“2011-12-24”。
至少我的手机是这样。如果其他一些手机的日历与公历不同,它们可能会以其他格式存储这些日期。
即使对于设置了公历的手机,也有带小时和分钟的日期字符串,也可以不带。当我查询联系人表中的事件时,我得到这样一个日期字符串:
cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Event.START_DATE))
这导致(例如):
“2011-12-14”或“2011-12-24T00:00:00Z”
您可以看到有许多不同的可能格式。为了计算日期,我需要将它们从 String 转换为 Date 对象,不是吗?
我该怎么做?
PS:我知道java日期对象有一个解析函数:
DateFormat myDateFormat = new SimpleDateFormat("dd/MM/yy");
Date tempDate = myDateFormat.parse("24/12/2011");
但在 Android 中,我不知道我会遇到哪种格式,不是吗?
【问题讨论】: