1

我正在遍历通话记录并将通话日期保存到一个数组中。在此过程中,我得到类似 1315164925580 的日期。通话记录循环的一部分:

int dateColumn = c.getColumnIndex(android.provider.CallLog.Calls.DATE);
long callDate = c.getLong(dateColumn);

我可以把它变成一个日期:

SimpleDateFormat datePattern = new SimpleDateFormat ("yyyy-MM-dd");
Long datelong = Long.parseLong("1315164925580");
String date_str = datePattern.format(new Date(datelong));

结果:2011-09-04

如何提取通话时间?

4

3 回答 3

2

您应该使用DateFormat.getDateTimeInstance方法而不是 SimpleDateFormat ,如果需要,请在 get 方法中指定输出格式。

DateFormat datePattern = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.MEDIUM);
Long datelong = Long.parseLong("1315164925580");
String date_str = datePattern.format(datelong);
于 2011-10-19T18:10:17.560 回答
1

使用此SimpleDateFormat格式字符串:yyyy-MM-dd HH:mm:ss.

于 2011-10-19T18:07:23.180 回答
0

扩展您的SimpleDateFormat格式字符串(在构造函数中)以包含时间参数,例如:"hh:mm a"

于 2011-10-19T18:09:01.057 回答