将 java.sql.Timestamp 格式化为字符串

新手上路,请多包涵

是否可以将 java.sql.Timestmap 转换/格式化为具有以下格式的字符串:

yyyyMMdd

我知道用 String 做这件事相当简单,例如:

 String dateString = "2016-02-03 00:00:00.0";
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S").parse(dateString);
String formattedDate = new SimpleDateFormat("yyyyMMdd").format(date);

但是,我必须使用 Timestamp 对象。

原文由 user818700 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
2 个回答

你可以这样做:

 Timestamp ts = ...;
Date date = new Date();
date.setTime(ts.getTime());
String formattedDate = new SimpleDateFormat("yyyyMMdd").format(date);

原文由 npinti 发布,翻译遵循 CC BY-SA 3.0 许可协议

java.sql.Timestamp 扩展 java.util.Date ,所以你可以用完全相同的方式格式化它:

 String formattedDate = new SimpleDateFormat("yyyyMMdd").format(date);

解析几乎是一样的,你可以使用它的“millis”表示来构造它:

 Timestamp timestamp = new Timestamp(new SimpleDateFormat("yyyyMMdd").parse(formattedDate).getTime());

原文由 Robert Bräutigam 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏