如何在 Java 中从字符串值创建 Date 对象?
使用 SimpleDateFormat 类
此类的构造函数之一接受表示所需日期格式的字符串值,并创建 **SimpleDateFormat** 类。要将字符串解析/转换为 Date 对象 -
- 通过传递所需的格式字符串来实例化此类。
- 使用 parse() 方法解析日期字符串。
示例
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Sample { public static void main(String args[]) throws ParseException { String date_string = "2007-25-06"; //Instantiating the SimpleDateFormat class SimpleDateFormat formatter = new SimpleDateFormat("yyyy-dd-MM"); //Parsing the given String to Date object Date date = formatter.parse(date_string); System.out.println("Date value: "+date); } }
输出
Date value: Mon Jun 25 00:00:00 IST 2007
使用 LocalDate 类
LocalDate 类的 parse() 方法接受表示日期的字符串值,并返回一个 LocalDate 对象。
示例
import java.time.LocalDate; public class Test { public static void main(String args[]) { LocalDate date = LocalDate.parse("2007-12-03"); System.out.println(date); } }
输出
2007-12-03
使用 DateUtils 类
**DateUtils** 提供格式化日期的实用程序,您可以在 apache.commons 包中找到它,以下是该包的 maven 依赖项 -
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.7</version> </dependency>
DateUtils 类的 **parseDate()** 方法接受格式字符串和日期字符串作为参数,并返回一个 Date 对象。
示例
import java.util.Date; import org.apache.commons.lang3.time.DateUtils; public class Test { public static void main(String args[]) { String dateInString = "07-06-2013"; Date date = DateUtils.parseDate(dateInString, "yyyy-MM-dd"); System.out.println(date); } }
输出
Sat Dec 03 00:00:00 IST 12
使用 Instant 类
java.time.Instant 类的 parse() 方法接受日期字符串作为参数,并返回一个表示给定日期的对象 (Instant)。
示例
import java.time.Instant; public class Test { public static void main(String args[]) { String dateInString = "2014-10-05T15:23:01Z"; Instant instant = Instant.parse(dateInString); System.out.println(instant); } }
输出
2014-10-05T15:23:01Z
广告