java字符串时间转换时间戳
时间: 2023-08-10 10:06:00 浏览: 123
可以使用Java中的SimpleDateFormat类来将字符串转换为时间对象,然后再使用getTime()方法将时间对象转换为时间戳。
以下是一个示例代码:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main {
public static void main(String[] args) throws Exception {
String str = "2021-06-30 12:30:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(str);
long timestamp = date.getTime();
System.out.println(timestamp);
}
}
```
在上面的示例代码中,我们首先定义了一个字符串表示时间,然后使用SimpleDateFormat类指定时间格式,并将该字符串解析为时间对象。最后,我们使用getTime()方法将时间对象转换为时间戳,并将其打印出来。
注意,SimpleDateFormat的构造函数中的字符串参数必须与时间字符串的格式相匹配,否则会抛出ParseException异常。
相关问题
java中字符串时间转换时间戳
在Java中,将日期和时间转换为时间戳通常使用`java.time`包下的`Instant`或`LocalDateTime`类,以及`Long`类型的`toEpochMilli()`方法。以下是基本步骤:
1. 首先,你需要导入相关的日期和时间处理库:
```java
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.Instant;
```
2. 获取当前或指定的时间(如LocalDateTime对象):
```java
LocalDateTime dateTime = LocalDateTime.now(); // 当前时间
LocalDateTime specificDate = LocalDateTime.of(2023, 1, 1, 0, 0); // 指定日期和时间
```
3. 将`LocalDateTime`转换为`Instant`,因为`Instant`包含了自1970年1月1日以来的毫秒数(UTC):
```java
Instant instant = Instant.from(dateTime.atZone(ZoneId.systemDefault()).toZonedDateTime());
```
4. 转换为时间戳(long型):
```java
long timestampMillis = instant.toEpochMilli();
```
如果你想要用户输入的时间,可以添加`Scanner`或`DateTimeFormatter`来进行解析。
java 字符串转换获取时间戳
以下是Java中字符串转换获取时间戳的例子:
```java
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main {
public static void main(String[] args) throws ParseException {
String timeStr = "2021-04-22 09:00:28";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(timeStr);
long timestamp = date.getTime();
System.out.println(timestamp); // 输出:1619089228000
}
}
```
以上代码中,我们首先定义了一个时间字符串`timeStr`,然后使用`SimpleDateFormat`类将其转换为`Date`类型的日期对象。接着,我们使用`getTime()`方法获取该日期对象的时间戳,并将其打印输出。
阅读全文