scala 将字符串“22/08/2013”转换为日期格式2013/08/22

kkbh8khc  于 2023-03-02  发布在  Scala
关注(0)|答案(3)|浏览(165)

这是我用scala编写的代码

var s:String ="22/08/2013"
 var  simpleDateFormat:SimpleDateFormat = new SimpleDateFormat("yyyy-mm-dd");
 var  date:Date = simpleDateFormat.parse(s);
 println(date)

日期未变更。日期格式与22/08/2013相同,2013/08/22无变更
如何在scala中将格式dd/mm/yyyy更改为yyyy/mm/dd

kfgdxczn

kfgdxczn1#

你需要定义一个SimpleDateFormat,它首先解析你的字符串并从中得到Date,然后把它转换成任何格式。

var s:String ="22/08/2013"
 var  simpleDateFormat:SimpleDateFormat = new SimpleDateFormat("dd/mm/yyyy");
 var  date:Date = simpleDateFormat.parse(s);
 val ans = new SimpleDateFormat("yyyy/mm/dd").format(date) 
 println(ans)
hs1ihplo

hs1ihplo2#

我试过了,对我很有效。

val s: String = "22/08/2013"
val simpleDateFormat: SimpleDateFormat = new SimpleDateFormat("dd/mm/yyyy")
val date = simpleDateFormat.parse(s)
val df = new SimpleDateFormat("yyyy/mm/dd")
println(df.format(date))
r9f1avp5

r9f1avp53#

约翰·维沙尔的回答中有一个微妙的错误:mm将08定义为分钟,而不是月。请改用MM。
更正代码:

val s = "2013_08_14"
val simpleDateFormat: SimpleDateFormat = new SimpleDateFormat("yyyy_MM_dd")
val date = simpleDateFormat.parse(s)
val df = new SimpleDateFormat("dd-MMM-yyyy")
println(df.format(date))

相关问题