微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – SimpleDateFormat String

我有这个代码块,其中dateFormat.format的参数将永远是一个字符串,这就是为什么我这样做.toString()在这里.我收到错误“无法格式化给定的对象作为一个日期”.

有没有办法做到这一点?请注意,字符串来自数据库,我使用新的Date()作为示例.

SimpleDateFormat dateFormat = new SimpleDateFormat("MMMMM dd,yyyy");
String sCertDate = dateFormat.format(new Date().toString());

解决方法

DateFormat#format接受日期,而不是字符串.

使用

String sCertDate = dateFormat.format(new Date());

如果您有一个来自数据库的字符串是特定的格式,并且要转换为日期,则应使用parse方法.

@Sonesh – 让我们假设你在数据库中有一个字符串,恰好代表一个Date(可能最好将对象存储在数据库中作为日期),那么你首先将它解析成你想要的格式,然后将其格式化到你想要的字符串格式.

// Assumes your date is stored in db with format 08/01/2011
SimpleDateFormat dateFormatOfStringInDB = new SimpleDateFormat("MM/dd/yyyy");
Date d1 = dateFormatOfStringInDB.parse(yourDBString);
SimpleDateFormat dateFormatYouWant = new SimpleDateFormat("MMMMM dd,yyyy");
String sCertDate = dateFormatYouWant.format(d1);

原文地址:https://www.jb51.cc/java/125632.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐