在Java中,可以使用以下几种方法将String转换为Timestamp:

方式一:使用SimpleDateFormat类

public class Main {
    public static void main(String[] args) {
        String dateString = "2021-01-01 12:00:00";
        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            Date date = dateFormat.parse(dateString);
            Timestamp timestamp = new Timestamp(date.getTime());
            System.out.println(timestamp);
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

方式二:使用DateTimeFormatter类(Java 8及以上版本)

public class Main {
    public static void main(String[] args) {
        String dateString = "2021-01-01 12:00:00";
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        LocalDateTime dateTime = LocalDateTime.parse(dateString, formatter);
        Timestamp timestamp = Timestamp.valueOf(dateTime);
        System.out.println(timestamp);
    }
}

方式三:方法3:使用Timestamp类的valueOf方法

public class Main {
    public static void main(String[] args) {
        String dateString = "2021-01-01 12:00:00";
        Timestamp timestamp = Timestamp.valueOf(dateString);
        System.out.println(timestamp);
    }
}

这些方法都可以将String类型的日期时间转换为Timestamp类型。

在第一种方法中,我们使用了SimpleDateFormat类来解析日期字符串,并将其转换为java.util.Date对象,然后使用Date对象的getTime方法获取毫秒数,最后使用Timestamp类的构造方法将毫秒数转换为Timestamp对象。

在第二种方法中,我们使用了Java 8引入的DateTimeFormatter类和LocalDateTime类。我们定义了一个格式化模式,并使用parse方法将日期字符串解析为LocalDateTime对象,然后使用Timestamp类的valueOf方法将LocalDateTime对象转换为Timestamp对象。

在第三种方法中,我们直接使用Timestamp类的valueOf方法将日期字符串转换为Timestamp对象。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐