在Scala中添加格式化分钟

在Scala中添加格式化分钟,scala,Scala,如何使用以下格式在scala中添加分钟 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 monthFo

如何使用以下格式在scala中添加分钟

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"
只需像下面这样做:

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

首先,停止使用旧的
Calendar
,开始使用Java8中的
java.time
。那么您只需要一个格式化程序(而不是六个:/)来打印一个字符串您的问题是什么?您已经在格式化分钟(
minuteFormat
)。顺便说一句,即使使用旧式Java日历,您也不需要十几种格式。您可以使用撇号
'foo'
来转义任意字符序列。上面的代码就是示例和答案。在上面的答案中,你没有看到格式中的“mm”吗?是的,我看到的是“mm”。。。。我想在当前时间内增加30分钟。。。如果使用val-cal=Calendar.getInstance().getTime()cal.add不起作用(无法解析符号),则表示val-cal=Calendar.getInstance()将出现类似“无法将给定对象格式化为日期”的错误谢谢现在我知道了,我在scala中有另一个查询