我有一个字符串和一个格式。我想使用该格式将字符串转换为日期时间。但简单的日期时间格式将字符串转换为日期时间,即使输入字符串格式不正确。日期时间解析不执行格式
val formatter = new SimpleDateFormat("yyyyMMdd")
val dateInString = "2017042er7"
try {
formatter.setLenient(false)
val date = formatter.parse(dateInString)
System.out.println(date)
System.out.println(formatter.format(date));
} catch {
case e:Exception=>println(e)
}
我该如何执行格式?
** UPDATE :: **使用joda时间格式化程序解决了这个问题。您也可以使用java时间格式化程序(作为建议的答案之一)。
仅供参考,诸如'java.util.Date',['java.util.Calendar'](https://docs.oracle.com)之类的麻烦的旧日期时间类.com/javase/8/docs/api/java/util/Calendar.html)和'java.text.SimpleTextFormat'现在是[legacy](https://en.wikipedia.org/wiki/Legacy_system),代替通过[java.time](https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html)类。同样,[Joda-Time](http://www.joda.org/joda-time/)项目现在处于[维护模式](https://en.wikipedia.org/wiki/Maintenance_mode),其中团队建议迁移到java.time类。 –