日期转换
我有一个日期变量
var date: Date = new Date()
,然后我已将此日期转换为字符串:
var dateStr = date.toString()
现在我需要将此字符串转换回日期。 我已经尝试过:
1:
var stringToDate: Date = date2Str.asInstanceOf[Date]
和 2:
stringToDate: Date = new SimpleDateFormat("dd.MM.yyyy").parse(dateStr);
但在这两种情况下我都收到错误:
java.lang.ClassCastException:
java.lang.String cannot be cast to java.util.Date
I have a date variable
var date: Date = new Date()
then I have converted this date to String:
var dateStr = date.toString()
now I need to convert back this String to date.
I have tried both:
1:
var stringToDate: Date = date2Str.asInstanceOf[Date]
and 2:
stringToDate: Date = new SimpleDateFormat("dd.MM.yyyy").parse(dateStr);
But in both case I got the error:
java.lang.ClassCastException:
java.lang.String cannot be cast to java.util.Date
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我在您的代码中发现了一些问题,但这工作正常:
I see a couple of problems in your code, but this works fine:
从
Scala 2.11
开始,面向Java 8
,可以使用java.time
Date Time API:请注意:
java.util.Date
/SimpleDateFormat
API。这也应该取代广泛使用的
joda-time库:
<块引用>
请注意,从 Java SE 8 开始,用户被要求迁移到 java.time (JSR-310) - JDK 的核心部分,它将取代该项目。
通过关联nscala-time,它是
joda-的包装器time
。Starting
Scala 2.11
, targetingJava 8
, thejava.time
Date Time API can be used:Note that:
java.util.Date
/SimpleDateFormat
api.This is also supposed to replace the widely used
joda-time
library:And by association nscala-time which is a wrapper around
joda-time
.您的第一次尝试应该会给您一个 ClassCastException,因为您无法将.aString 转换为 Date。第二次尝试似乎没有使用正确的格式
Date.toString()
打印。 java.utility.Date 的 toString 方法返回 javadoc 中指定格式的字符串。Your first try should give you a ClassCastException because you cannot cast.aString to a Date. the second try does not seem to be using the right format that
Date.toString()
prints. The toString method of java.utility.Date returns a String in the format specified in the javadoc.使用 nscala-time 以下对我有用:
using nscala-time the following worked for me :