如何直接修改Date存储的日期的格式?

新手上路,请多包涵

Date存储的原时间如下:
Fri May 14 10:37:21 CST 2021
现想将其修改为“yyyy-MM-dd"的时间格式。

尝试过使用

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
date = sdf.parse(date.toString());

然而编译器报以下错误:

java.text.ParseException: Unparseable date: "Fri May 14 10:37:21 CST 2021"

如果使用

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(sdf.format(date));

固然可以输出理想的值,但此时Date存储的时间并未发生改变,只是输出的字符串变了。

请问有什么直接修改Date的日期格式的有效方法吗?

阅读 2.4k
3 个回答

        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        System.out.println(format.parse(format.format(new Date())));

是这个?????

固然可以输出理想的值,但此时Date存储的时间并未发生改变,只是输出的字符串变了。

时间就是时间格式就是格式,你要改的是格式不是时间,所以你下面的这种做法没问题

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(sdf.format(date));
新手上路,请多包涵
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题