如何使用此格式yyyy-MM-dd
我想要这个
SimpleDateFormat formatDate = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
String strDate = formatDate.format(now);
return strDate;
但返回Date
而不是String
。
非常感谢任何帮助。
更新:如果是这种情况,我可以将我的字符串解析为日期吗?
答案 0 :(得分:7)
如何使用此格式yyyy-MM-dd获取系统的当前日期,但返回Date而不是String。
你做不到。除了“具有格式的Date
”的概念之外,没有“具有格式的int
”之类的东西。 Date
值只是一个时间点,没有关联的文本格式,日历系统或时区。
使用new Date()
会得到一个代表当前时刻的Date
对象,而不是其他内容。你如何使用它取决于你 - 但是如果你从一个方法返回它,那么就没有相关的日期(因为日期会因时区而异),没有格式等 - 这取决于调用代码是否适当地使用它。 / p>
您可能需要考虑使用至少具有LocalDate
类型的Joda Time - 尽管在考虑“当前日期”时仍需要考虑要使用的时区。 (并且仍然没有与该值相关联的格式信息。)
编辑:要回答您的更新,您可以使用SimpleDateFormat
进行解析 - 但不清楚您的字符串来自何处。这听起来像是你问题其余部分的相反的要求。
答案 1 :(得分:1)
因为您无法更改Date
格式构建自己的CustomDate,所以它只是时间的表示。
答案 2 :(得分:0)
关于以字符串形式接收日期的方法 使用另一个simpledateformat 并使用
将字符串转换为日期simpledateformatter.parse(strDate);
答案 3 :(得分:-1)
你可以使用它。!!
String formatDate = new SimpleDateFormat("yyyy-MM-dd").format( yourDate);