如何将 Java 时间戳转换为日期

原文:https://www.studytonight.com/java-type-conversion/how-to-convert-java-timestamp-to-date

在 Java 中,TimeStamp可以使用java.util包的Date类的构造器转换成日期

必须注意的是日期类将参数作为长值,因此TimeStamp对象需要转换为长值。这是使用java.sql包的Timestamp类的getTime() 方法完成的。

例 1:

这里TimeStamp使用Date构造器转换成Date。请看下面的例子。

import java.sql.Timestamp;    
import java.util.Date;  

public class StudyTonight
{    
    public static void main(String args[])
    {    
        Timestamp t = new Timestamp(System.currentTimeMillis()); //for current time in milliseconds 
        Date d = new Date(t.getTime());  
        System.out.println(d);                      
    }    
}

因此,09 月 24 日 05:28:11 UTC 2020

例 2:

此外,Timestamp类扩展了Date类。因此,Timestamp类的实例可以直接分配到日期中,并且可以获得像时间戳这样的输出。但是,这是不可取的,因为在这种情况下毫秒和纳秒可能会丢失。

import java.sql.Timestamp;    
import java.util.Date;  

public class StudyTonight
{    
    public static void main(String args[])
    {    
        Timestamp t = new Timestamp(System.currentTimeMillis());  
        Date d = t;  
        System.out.println(d);                       
    }    
}

2020-09-24 05:48:58.627

例 3:

这里TimeStamp转换成Date,格式转换成各种格式。

import java.sql.Timestamp; 
import java.text.DateFormat;
import java.util.Date; 
import java.text.SimpleDateFormat;

public class StudyTonight
{    
    public static void main(String args[])
    {    
        Timestamp stamp = new Timestamp(System.currentTimeMillis());
        Date date = new Date(stamp.getTime());
        DateFormat f = new SimpleDateFormat("yyyy-MM-dd");
        DateFormat f1 = new SimpleDateFormat("yyyy/MM/dd");
        String d = f.format(date);
        String d1 = f1.format(date);
        System.out.println(d);
        System.out.println(d1);
    }    
}

2020-10-15 2020/10/15