Android 中的 DateFormat 转换

DateFormat conversion in Android

假设我们有一个日期显示为。

2015-08-03 12:00:00

我如何将其转换为一天的名称,如 Tuesday?我不想要 03 Tue 之类的东西。只需要完整的 days 名称。我环顾四周,但对此感到有些困惑。

首先,将该日期解析为 java.util.Date 对象。

DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date yourDate = formatter.parse("2015-08-03 12:00:00");

然后,用这个日期填充 Calendar

Calendar c = Calendar.getInstance();
c.setTime(yourDate);
int dayOfWeek = c.get(Calendar.DAY_OF_WEEK);

现在您有了星期几 dayOfWeek(例如 1 表示星期日)。

 SimpleDateFormat simpleDateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 Date now = simpleDateformat.parse("2015-08-03 12:00:00");
 simpleDateformat = new SimpleDateFormat("EEEE"); // the day of the week spelled out completely
 System.out.println(simpleDateformat.format(now));

这是我想出的解决方案:

     SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd  
       HH:mm:ss");
      Date weekDay = null;
      try {
          weekDay = formatter.parse("2015-08-03 12:00:00");
      } catch (ParseException e) {
          e.printStackTrace();
       }
     SimpleDateFormat outFormat = new SimpleDateFormat("EEEE");

     String day = outFormat.format(weekDay);