Java中的人类可读和可解析的日期格式

2022-09-02 05:12:53

我想将 Date 对象保存到可读字符串(例如 22/10/2009 21:13:14),该字符串也可以解析回 Date 对象。

我已经尝试了很多事情,我能找到的最好的方法是使用DateFormater进行解析和格式化,但它有一个挫折。设置日期格式时,会丢失秒信息。我试图找到是否有一个选项来格式化它并显示秒(甚至更好的是毫秒级,因为这是Date对象允许你拥有的分辨率),但我提出了不足。

有什么想法吗?


答案 1

看看java.text.SimpleDateFormat

SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss.SSS");
Date dt = new Date();
String S = sdf.format(dt); // formats to 09/23/2009 13:53:28.238
Date dt2 = sdf.parse(S); // parses back

答案 2

SimpleDateFormat可以基于非常简单的模式系统格式化和解析日期,其中包括秒甚至毫秒。