如何将当前时间百万转换为可读的日期格式?

2022-08-31 13:05:34

我想使用两次,以便我可以计算持续时间,但我也想以用户可读的格式显示时间和日期。我遇到了麻烦,因为对计算有好处,但我看不到一个内置的函数来转换为漂亮的时间或时间/日期。currentTimeMilliscurrentTimeMillis

我使用

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

为了产生美好的时间和日期,我最终想做的是将我的结果价值展示给currentTimeMillisandroid.text.format.DateFormat df = new android.text.format.DateFormat();

例如:

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

当我尝试我得到

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

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


答案 1

它会起作用。

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

答案 2

安卓有更简单的方法

 DateFormat.getInstance().format(currentTimeMillis);

此外,日期已被弃用,因此请使用日期格式类。

   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