2016-01-11 27 views
-2

如何在斯卡拉与下面的格式添加分钟加入格式化分钟斯卡拉

import java.text.SimpleDateFormat 
import java.util.Calendar 

val cal = Calendar.getInstance().getTime() 
//val cal = Calendar.getInstance() 


// create the date/time formatters 
val dayFormat = new SimpleDateFormat("dd") 
val monthFormat = new SimpleDateFormat("MM") 
val yearFormat = new SimpleDateFormat("yyyy") 
val hourFormat = new SimpleDateFormat("HH") 
val minuteFormat = new SimpleDateFormat("mm") 
val secondFormat = new SimpleDateFormat("ss") 

val year = yearFormat.format(cal); 
val month = monthFormat.format(cal); 
val day = dayFormat.format(cal); 
val hour = hourFormat.format(cal); 
val minute = minuteFormat.format(cal); 
val second = secondFormat.format(cal); 

val AxedaRecvdDt = year + "-" + month + "-" + day + "T" + hour + ":" + minute + ":" + second + "Z" 
+1

首先停止使用旧的'Calendar'并开始使用Java的' .time“,然后你只需要一个格式化程序(不是六个:/)来打印一个字符串https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html – Przemek

+0

你的问题是什么?您正在格式化分钟('minuteFormat')。顺便说一下,你不需要十几种格式,即使使用旧式Java日历也是如此。您可以使用撇号''foo''来转义任何字符序列。 –

回答

1

只要做到象下面这样:

import java.text.SimpleDateFormat 
import java.util.Calendar 

val cal = Calendar.getInstance() 
//Why declare formats separately, format and concatenate when you can do just that in a single format 
cal.add(Calendar.MINUTE, 30); // add mins here 
val formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ") 
val AxedaRecvdDt = formatter.format(cal.getTime()) 
+0

我想在这种格式中添加分钟 – twinkle

+0

'毫米'代表分钟,它已经存在 – James

+0

上面的代码是样本和答案。你在上面的答案中没有看到'mm'的格式吗? – James