【发布时间】:2014-12-24 04:54:52
【问题描述】:
如何在 java 中从 String 中创建 Date 数据类型?
输入:String "2014/01/01 18:02:02" => 输出:Date 2014/01/01 18:02:02
【问题讨论】:
-
有很多格式化程序和解析类如 DateFormat ,你可以使用任何人。
如何在 java 中从 String 中创建 Date 数据类型?
输入:String "2014/01/01 18:02:02" => 输出:Date 2014/01/01 18:02:02
【问题讨论】:
您可以使用DateFormat 到parse 和format(它们是互惠函数)String。类似的,
String str = "2014/01/01 18:02:02";
DateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
try {
Date d = df.parse(str);
System.out.println(df.format(d));
} catch (ParseException e) {
e.printStackTrace();
}
输出是(按要求)
2014/01/01 18:02:02
【讨论】:
请使用SimpleDateFormat将String解析为Date。
在那里你可以找到合适的DateFormat 来将这个String 转换成Date。
【讨论】:
你可以试试这个
String dateString = "2014/01/01 18:02:02";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
LocalDateTime StringAsDate = LocalDateTime.parse(dateString, formatter);
我建议您使用 Time(java.time) API 而不是 java.util 来满足您的日期和时间需求,因为它是新的并且专门添加到 java 中用于日期和时间操作。
【讨论】:
可以使用下面的代码sn -p -
String dateString = "10-11-2014";
DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
Date inputDate = dateFormat.parse(dateString);
【讨论】:
你也可以试试这个。
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
String dateInString = "2014/01/01 18:02:02";
Date date = formatter.parse(dateInString);
System.out.println(date);
System.out.println(formatter.format(date));
这是一个工作,它也适合你,因为它并不复杂。你会得到这个输出:
Wed Jan 01 18:02:02 IST 2014
2014/01/01 18:02:02
【讨论】:
对于您的日期,以下代码应该可以工作:-
String myString = "2014/01/01 18:02:02";
DateFormat myDateFormat = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
Date myDate = myDateFormat.parse(myString);
有关详细信息,请参阅 SimpleDateFormat 的文档。只需确保您使用大写“MM”表示月份,使用小写“mm”表示分钟。
【讨论】: