Avatar ·

如何在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`而不是实际的分钟?我已经尝试了不同的字母组合,但文档对我来说还比较复杂。请告诉我如何正确实现?也许有更现代的方法?