java - 如何使用 SimpleDateFormat 格式化我的日期?

标签 java date simpledateformat

我正在尝试设置日期格式,但是当我运行此代码时

String oldstring = "2013-01-1";
System.out.println("oldstring = "+oldstring);
Date date = new SimpleDateFormat("yyyy-mm-dd").parse(oldstring);
System.out.println("datefield = "+date);

我得到结果:

oldstring = 2013-01-1
datefield = Tue Jan 01 00:01:00 MSK 2013

为什么日期字段不等于 2013-01-1?

最佳答案

首先,yyyy-mm-dd中的mm表示分钟而不是月份。要设置月份,请使用 MM

它看起来像这样:

Date date = new SimpleDateFormat("yyyy-MM-dd").parse(oldstring);

更新 试试这个:

String oldstring = "2013-01-1";
System.out.println("oldstring = "+oldstring);
Date date = new SimpleDateFormat("yyyy-mm-dd").parse(oldstring);
String sdf = new SimpleDateFormat("yyyy-mm-dd").format(date);
System.out.println("datefield = "+sdf);

如果不使用new SimpleDateFormat("yyyy-mm-dd").format(date); 您将获得包含所有信息的标准日期格式。如果您想要特殊格式,则需要使用
new SimpleDateFormat("yyyy-mm-dd").format(date);

Also read this article about date formatting

关于java - 如何使用 SimpleDateFormat 格式化我的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15740565/

相关文章:

java - Spring R2DBC DatabaseClient 丢失 TZ 信息

java - 调试从浏览器加载的 java 中加载的 dll

java - Apache Felix 过滤器问题

android - 根据区域设置显示日期

java - 在 Java 中确定文件创建日期

java - 使用 SimpleDateFormat 的奇怪日期和时间解析结果

java - 将字符串解析为 'yyyy-mm-ddThh:mm:ss.SSSZ' ISODate java

java - java从文件中读取对象

MYSQL比较日期列和时间戳列

Java SimpleDateFormat 上午/下午