Waq*_*Ali -1 java date simpledateformat
我有这个代码
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestClass {
public static void main(String args[]) {
SimpleDateFormat f = new SimpleDateFormat("YYYY-MM-DD HH:MM:SS");
Date d = new Date();
System.out.println(f.format(d));
}
}
Run Code Online (Sandbox Code Playgroud)
我预计输出应该是
OutPut: 2013-07-05 19:07:983 (current date time)
Run Code Online (Sandbox Code Playgroud)
但我得到的输出如下
Output: 2013-07-186 19:07:983
Run Code Online (Sandbox Code Playgroud)
我的代码有什么问题?当我打印这一行时,d.toString()我得到了正确的日期.
您的格式在各方面都是错误的.你要yyyy-MM-dd HH:mm:ss
yyyy- 日历年(不是工作年YYYY)MM - 一年中的一个月dd- 月中的某一天(不是一年中的某一天DD)HH - 一天中的小时(24小时制)mm- 分钟(不是月份MM)ss- 秒(不是毫秒SS)有关SimpleDateFormat更多详细信息,请参阅Javadoc .
此外,默认情况下SimpleDateFormat将使用系统默认时区 - 您应该考虑这是否实际上是您想要的时区.即使你不明确希望的是,它可能是更清晰明确设置它.同上这个地方.