如何在Java中获取当前日期和时间,格式为YYYY-MM-DD HH:MM:SS.毫秒?
大家好!我是Java新手,正在编写一个用于日志记录的小应用程序。我需要将当前时间精确到毫秒,格式为:`2023-11-15 14:30:25.123`。我尝试过使用`java.util.Date`和`SimpleDateFormat`,但似乎出了问题。
这是我的代码:
```java
import java.util.Date;
import java.text.SimpleDateFormat;
public class Main {
public static void main(String[] args) {
Date now = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-DD HH:MI:SS.mmm");
String formattedDate = sdf.format(now);
System.out.println(formattedDate);
}
}
```
输出结果很奇怪:`2023-11-335 14:09:25.025`。为什么会出现`335`而不是月份中的天数?为什么分钟显示为`MI`而不是实际的分钟?我已经尝试了不同的字母组合,但文档对我来说还比较复杂。请告诉我如何正确实现?也许有更现代的方法?