如何将currentTimeMillis转换为可读的date格式?

我想使用currentTimeMillis两次,所以我可以计算一个持续时间,但我也希望以用户可读格式显示时间和date。 由于currentTimeMillis对计算有好处,所以我遇到了麻烦,但是我无法看到内置的函数将转换为漂亮的时间或时间/date。

我用

 android.text.format.DateFormat df = new android.text.format.DateFormat(); df.format("yyyy-MM-dd kk:mm:ss", new java.util.Date()); 

为了生成好的时间和date,我最终想做的是显示我的结果currentTimeMillis值到android.text.format.DateFormat df = new android.text.format.DateFormat();

例如

 android.text.format.DateFormat df = currentTimeMillis(); 

当我尝试我得到

types不匹配:无法从long转换为DateFormat

我试图使用一些铸造,但不知道如何做到这一点。

它会工作。

 long yourmilliseconds = System.currentTimeMillis(); SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm"); Date resultdate = new Date(yourmilliseconds); System.out.println(sdf.format(resultdate)); 

Android中有一个更简单的方法

  DateFormat.getInstance().format(currentTimeMillis); 

此外,date已被弃用,所以使用DateFormat类。

  DateFormat.getDateInstance().format(new Date(0)); DateFormat.getDateTimeInstance().format(new Date(0)); DateFormat.getTimeInstance().format(new Date(0)); 

以上三行将给出:

 Dec 31, 1969 Dec 31, 1969 4:00:00 PM 4:00:00 PM 12:00:00 AM 
 Date date = new Date(currentmilliseconds); 

现在date对象有标准的date。

你可以尝试一下