在 Java 中将字符串转换为日期

在本程序中,您将学习使用格式化程序在 Java 中将字符串转换为日期。

要理解此示例,您应该具备以下 Java 编程的知识:

示例 1:使用预定义的格式化程序将字符串转换为日期

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class TimeString {

    public static void main(String[] args) {
        // Format y-M-d or yyyy-MM-d
        String string = "2017-07-25";
        LocalDate date = LocalDate.parse(string, DateTimeFormatter.ISO_DATE);

        System.out.println(date);
    }
}

输出

2017-07-25

在上面的程序中,我们使用了预定义的格式化程序 ISO_DATE,它采用 2017-07-252017-07-25+05:45 格式的日期字符串。

LocalDate 的 parse() 函数使用给定的格式化程序解析给定的字符串。您还可以删除上面示例中的 ISO_DATE 格式化程序并将 parse() 方法替换为:

LocalDate date = LocalDate.parse(string, DateTimeFormatter);

示例 2:使用模式格式化程序将字符串转换为日期

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;

public class TimeString {

    public static void main(String[] args) {
        String string = "July 25, 2017";

        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMMM d, yyyy", Locale.ENGLISH);
        LocalDate date = LocalDate.parse(string, formatter);

        System.out.println(date);
    }
}

输出

2017-07-25

在上面的程序中,我们的日期格式为 MMMM d, yyyy, 所以,我们使用给定的模式 MMMM d, yyyy 创建一个格式化程序。

现在,我们可以使用 LocalDate.parse() 函数解析日期并获取 LocalDate 对象。

如果您感兴趣,请检查所有 DateTimeFormatter 模式