一尘不染

如何在不知道格式的情况下将String转换为Date?

java

我有个问题。我正在尝试将一些字符串转换为日期,但我不知道日期到达的格式。

这或许让他们yyyy.mm.dd hh:mm:ssMM.dd.yy hh:mm:ss等。

如何将这些字符串转换为Date?我尝试了这个:

DateFormat formatter = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss");
Date d = (Date)formatter.parse(someDate);

但是,当我打印出someDate时,它的打印方式是这样的:2019-08-05 12:42:48.638 CEST这意味着yyyy.mm.dd hh:mm:ss,但是当我运行以上代码时,日期对象现在变成了Sat Jan 31 00:42:48 CET 11,至少可以这样说。

有什么想法可以正确格式化日期格式吗?


阅读 376

收藏
2020-03-25

共1个答案

一尘不染

你不能!

如果你有日期,2019-08-05那么它可以是2019年8月5日,也可以是2019年5月8日-你需要知道日期格式(或至少优先考虑一种格式)以区分它们。

2020-03-25