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

时间:2013-08-29 05:31:51

标签: scala date date-format simpledateformat

这是我在scala中的代码

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

日期不变。格式日期与2013年8月22日相同 对2013/08/22没有变化

如何在scala中将格式dd / mm / yyyy更改为yyyy / mm / dd

3 个答案:

答案 0 :(得分:7)

您需要定义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)

答案 1 :(得分:2)

我试过这对我有用。

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))

答案 2 :(得分:0)

John Vishal的回答有一个微妙的错误: 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))