如何在Java中将String转换为Date对象?
以下代码显示了如何将日期的字符串表示形式转换为java.util.Date对象。
要转换日期字符串,我们可以使用java.text.SimpleDateFormat扩展java.text.DateFormat抽象类的帮助。
package org.nhooo.example.text; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.Date; public class ConvertStringToDateExample { public static void main(String[] args) { String pattern = "dd/MM/yyyy"; String date = "28/01/2018"; try { DateFormat df = new SimpleDateFormat(pattern); Date today = df.parse(date); System.out.println("Today = " + df.format(today)); } catch (ParseException e) { e.printStackTrace(); } // 使用Java 8日期和时间 DateTimeFormatter formatter = DateTimeFormatter.ofPattern(pattern); LocalDate localDate = LocalDate.parse(date, formatter); System.out.println("Today = " + localDate.format(formatter)); } }
这是我们的代码的结果:
Today = 28/01/2018 Today = 28/01/2018
该示例通过创建一个实例开始SimpleDateFormat与dd/MM/yyyy这意味着日期字符串以日-月-年顺序格式的格式。
最后使用parse(stringsource)方法我们可以得到Date实例。因为parse方法可以抛出java.text.ParseException异常如果提供的日期格式无效,则出现异常;我们需要捕获它。
这是可用于格式化从Java类文档获取日期的已定义模式的列表。
Era指示符
一年中的月份
一年中的星期
Am/pm标记
一天中的小时数(0-23)
一天中的小时数(1-24)
上午/下午(0-11)时
上午/下午(1-12)时