我是Android编程的新手,我正在编写一些测试代码,以使用短信意图检索收件箱中的所有短信。我写的代码如下:
Uri uri = Uri.parse("content://sms/inbox");
Cursor c = getContentResolver().query(uri, new String[]{"address","person","date","body"}, null, null, null);
c.moveToFirst();
if(c.getCount() > 0){
while(!c.isLast()){
System.out.println(c.getString(c.getColumnIndex("date")));
c.moveToNext();
}
}
这是正确的方法吗? 我看到日期列的值被检索为“1326781012725”。 我想将其转换为YYYY-MM-DD这样的可读格式。我可以这样做吗?
请注意,我使用的是API版本10,因此api-cursor.getType()(返回列的数据类型)不可用。
感谢。
答案 0 :(得分:2)
“1326781012725”是时间戳。时间戳转换可以这样做;
final Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(System.currentTimeMillis());
Date date = cal.getTime();
mHour = date.getHours();
mMinute = date.getMinutes();