2013-10-24 166 views
0

我使用下面的查询光标SMS数据库:从SMS时间戳格式化时间?

Uri uri = Uri.parse("content://mms-sms/conversations?simple=true"); 
    Cursor cursor = _context.getApplicationContext().getContentResolver().query(uri, null, null, null, "normalized_date desc"); 

我收到追溯到,但他们都以数字格式返回。现在我知道我可以使用以下命令:

SimpleDateFormat dateFormatted = new SimpleDateFormat("hh:mm") 

,并让所有的时间回到我选择的任何格式,但我想知道如果有一个更简单的方法对我来说,确定是否该时间戳是从今天开始,在本周早些时候还是在一周前?或者另一种方法可以让我更容易确定这一点?

回答

0

使用格式字符串的任何问题所需的输出SimpleDateFormat的如

SimpleDateFormat dateFormatted = new SimpleDateFormat("EEE, MMM d, ''yy") 

或在javadoc提供的选项其他无数的?

0

您可以获得Calendar对象的日期并评估相对于当前日期获得的范围。

Calendar smsCalendar = Calendar.getInstance(); 
    smsCalendar.setTimeInMillis(smsTime); 
    year1=c.get(c.YEAR); 
    week1=c.get(c.WEEK_OF_YEAR); 

    Calendar lastWeek=Calendar.getInstance();  
    year2=c.get(c.YEAR); 
    week2=c.get(c.WEEK_OF_YEAR); 

    if(year1 == year2){ 
      if(week1 == week2}{ 
      //Do what you want here 

      } 
     } 
    }