📜  将时间戳转换为日期的Java程序

📅  最后修改于: 2022-05-13 01:54:34.222000             🧑  作者: Mango

将时间戳转换为日期的Java程序

日期时间类 用于在Java中显示日期和时间以及操作日期和时间,除此之外,它还用于跨时区相关数据格式化Java中的日期和时间类。所以为了从一个叫做Java .utils的包中导入这个类

可以使用Java .Util 包中的 Date 类将 Timestamp 类转换为Java中的 Date 类。 Date 类的构造函数接收一个 long 值作为参数。由于Date类的构造函数需要long值,我们需要使用TimeStamp类的getTime()方法(SQL包中存在)将Timestamp对象转换为long值。

导入此类后,可以创建 Date 类的对象以打印当前日期和时间。现在为了打印默认日期和时间,只需使用toString()方法调用打印命令来获取当前日期和时间

注意:为了直到现在只打印毫秒数,只需使用 getTime() 而不是 to String() 来获取程序执行前的毫秒数。另外,请记住01-01-1970是基准参考,也称为纪元时间。

方法:有以下3种方法:

  1. 使用构造函数
  2. 使用日期参考
  3. 使用日历类

实现:在Java程序的帮助下单独描述方法:

方法 1:时间戳到日期使用日期构造函数

Java
// Java program to convert timestamp to Date
 
// Importing java Date libraries
import java.sql.Timestamp;
import java.util.Date;
 
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Getting the current system time and pasing it
        // to constructor of time-stamp class
        // Using currentTimeMillis
        Timestamp ts
            = new Timestamp(System.currentTimeMillis());
 
        // Passing the long value in the Date class
        // constructor
        Date date = new Date(ts.getTime());
 
        // Printing the date
        System.out.println(date);
    }
}


Java
// Java program to convert timestamp to Date
// Importing java Date libraries
import java.sql.Timestamp;
import java.util.Date;
 
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Getting the current system time and pasing it
        // to constructor of time-stamp class
        Timestamp ts
            = new Timestamp(System.currentTimeMillis());
 
        /* Date class is super class of TimeStamp class*/
 
        //  Directly assigning the object of
        // timestamp class to date class
        Date date = ts;
 
        // Printing the date
        System.out.println(date);
    }
}


Java
// Java program to convert timestamp to Date
 
// Importing java Date libraries
import java.sql.Timestamp;
import java.util.Date;
import java.util.Calendar;
 
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Getting the current system time and pasing it
        // to constructor of time-stamp class
        Timestamp timestamp
            = new Timestamp(System.currentTimeMillis());
 
        // Getting the calendar class instance
        Calendar calendar = Calendar.getInstance();
 
        // Passing the long value to calendar class function
        calendar.setTimeInMillis(timestamp.getTime());
 
        // Getting the time using getTime() function
        System.out.println(calendar.getTime());
    }
}



输出
Tue Nov 24 00:28:31 UTC 2020

方法 2:使用日期参考的时间戳

Timestamp 类扩展了 Date 类。因此,您可以直接将 Timestamp 类的实例分配给 Date。在这种情况下,Date 对象的输出将类似于 Timestamp,即它的格式类似于日期后跟时间(以毫秒为单位)。

Java

// Java program to convert timestamp to Date
// Importing java Date libraries
import java.sql.Timestamp;
import java.util.Date;
 
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Getting the current system time and pasing it
        // to constructor of time-stamp class
        Timestamp ts
            = new Timestamp(System.currentTimeMillis());
 
        /* Date class is super class of TimeStamp class*/
 
        //  Directly assigning the object of
        // timestamp class to date class
        Date date = ts;
 
        // Printing the date
        System.out.println(date);
    }
}


输出
2020-11-24 00:28:30.646

方法 3:使用 Calendar 类的时间戳

我们也可以使用日历类使用时间戳获取日期,下面是将时间戳转换为日期的方法的实现。

Java

// Java program to convert timestamp to Date
 
// Importing java Date libraries
import java.sql.Timestamp;
import java.util.Date;
import java.util.Calendar;
 
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Getting the current system time and pasing it
        // to constructor of time-stamp class
        Timestamp timestamp
            = new Timestamp(System.currentTimeMillis());
 
        // Getting the calendar class instance
        Calendar calendar = Calendar.getInstance();
 
        // Passing the long value to calendar class function
        calendar.setTimeInMillis(timestamp.getTime());
 
        // Getting the time using getTime() function
        System.out.println(calendar.getTime());
    }
}


输出
Tue Nov 24 00:28:31 UTC 2020