如何在 Java 中把字符串日期转换为时间戳

  1. 在 Java 中使用 Timestamp 构造函数将字符串日期 Date 转换为时间戳 Timestamp
  2. 在 Java 中用 LocalDate 将日期字符串转换为时间戳
  3. 在 Java 中使用 atStartOfDay() 方法将字符串日期转换为时间戳

本教程介绍了如何在 Java 中把字符串日期转换为时间戳。

有几种方法可以将字符串日期转换为时间戳,如使用 Timestamp 构造函数或 Java 8 LocalDate 类。

在 Java 中使用 Timestamp 构造函数将字符串日期 Date 转换为时间戳 Timestamp

在这里,我们使用 Timestamp 构造函数来获取一个时间戳 Timestamp 对象。首先,我们使用 SimpleDateFormat 类设置 date 的格式,然后使用 parser() 方法得到日期对象,然后使用 geteTime() 方法将时间与日期相加,得到一个 timestamp 的结果。请看下面的例子。

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

public class SimpleTesting {

	public static void main(String[] args) {
		try {
		      DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
		      Date date = dateFormat.parse("12/10/1990");
		      Timestamp timeStampDate = new Timestamp(date.getTime());
		      System.out.println(timeStampDate);
		    } catch (ParseException e) {
		      System.out.println(e);
		    }
	}
}

输出:

 1990-10-12 00:00:00.0

在 Java 中用 LocalDate 将日期字符串转换为时间戳

在 Java 8 中,它增加了一个新的 java.time 包,其中包含几个处理日期和时间的类。在这里,我们使用该包中的 LocalDate 类。我们使用 LocalDate 类的 parse() 方法从日期字符串中得到 LocalDate 对象,然后使用 atTime() 方法得到 LocalDateTime 对象,返回一个带时间的日期。now() 用于获取系统的当前时间。

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;

public class SimpleTesting {

	public static void main(String[] args) {
		      LocalDate date = LocalDate.parse("2025-11-25");
		      System.out.println(date);
		      LocalDateTime dateTime = date.atTime(LocalTime.now());
		      System.out.println(dateTime);
		      
	}
}

输出:

2025-11-25
2025-11-25T09:44:56.814795

在 Java 中使用 atStartOfDay() 方法将字符串日期转换为时间戳

LocalDate 类中的 atStartOfDay() 方法也用于获取 LocalDateTime 对象。该方法在一天开始时将时间添加到日期中,并返回一个日期-时间而不是一个简单的日期。请看下面的例子。

import java.time.LocalDate;
import java.time.LocalDateTime;

public class SimpleTesting {

	public static void main(String[] args) {
		String strDate = "2019-10-20";
		LocalDate date = LocalDate.parse(strDate);
	    LocalDateTime dateTime = date.atStartOfDay();
	    System.out.println(dateTime);
	}
}

输出:

2019-10-20T00:00

相关文章 - Java Date

  • 如何在 Java 中为日期增加一天
  • 如何在 Java 中把日期转换为字符串
  • 相关文章 - Java String

  • 如何在 Java 中转换字符串到日期
  • 如何在 Java 中检查字符串是否为整数
  • comments powered by Disqus