如何在 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

更新於: 2021-02-06

2K+ 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告