【发布时间】:2014-04-09 18:32:43
【问题描述】:
我有这段代码,我试图将日期字符串从一种格式转换为另一种格式,最后我再次想要日期对象。
String dateString = "2014-10-04";
SimpleDateFormat oldFormatter = new SimpleDateFormat("yyyy-MM-dd");
Date parsedDate = oldFormatter.parse(dateString);
SimpleDateFormat newFormatter = new SimpleDateFormat("dd-MMM-yyyy");
String convertDateStr = newFormatter.format(parsedDate);
Date convertedDate = newFormatter.parse(convertDateStr);
当我使用 dateString 值为“2014-10-04”测试上面的代码时,上面的代码可以正确执行,但 convertDate 格式更改为“Sat Oct 04 00:00:00 IST 2014”而不是“dd-MMM -yyyy" 格式。
我的功能就像我有两个不同格式的日期,并且需要在比较时获得剩余天数的差异,所以我需要在获得天数差异之前将一种日期格式转换为另一种日期。
编辑 - 是否有替代选项将日期字符串转换为指定格式并返回转换格式的日期对象
【问题讨论】:
-
你应该先看清楚我的问题,不是解析日期,而是解析后如何保留日期格式
-
实际上你问了多个问题:如何将字符串解析为日期时间,如何将日期时间格式化为字符串,为什么 j.u.Date 以替代格式打印,如何计算日期时间值之间的天数。所有这些都是重复的,在 StackOverflow 上被多次询问和回答。尽管如此,我还是发布了一个答案,作为几个不同事物的地图,以检查程序员何时不熟悉日期时间。
标签: java simpledateformat