【发布时间】:2019-07-26 17:12:47
【问题描述】:
我有一个像 "2015-07-16 17:07:21" 这样的字符串。我想将其转换为相同格式的日期。我尝试过这样的事情:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:MM:ss");
Date date = sdf.parse("2015-07-16 17:07:21");
但输出格式不同,例如 Thu Jul 16 17:00:21 IST 2015。我怎样才能让它按我的需要工作。谁能帮我。我知道这可能是重复的,但我没有找到任何运气。
【问题讨论】:
-
日期没有格式,它有一个代表时间点的值。如果你想以某种格式显示它,你应该使用 SimpleDateFormat
-
我该怎么做。你能给我一个例子或一个链接来参考吗?
-
当你希望它的格式不同时,用你需要的模式定义另一个 SimpleDateformat 并用它来格式化日期。需要明确的是:您有一个 SimpleDateformat 解析输入,一个用于打印输出。
-
至少有两个答案已经说明了这一点,让我更明确地说:日期没有“格式”。日期是一个(大)整数,即自过去某个时间以来的毫秒数。 SimpleDateFormat 是将字符串从特定格式转换为日期(
parse())或将日期转换为字符串(format())的一种(简单)方法。 -
我建议你避免使用
SimpleDateFormat类。它不仅过时了,而且出了名的麻烦。今天我们在java.time, the modern Java date and time API 中做得更好。
标签: java date simpledateformat