我的代码。刚才提到的日期部分。
case class data (id:String, date:String, temp:Int, pressure:Int, humidity:Int)
val date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
val date1=date.toString
var first= new data(id1,date1,temp,press,hum)
我的输出是
date":"java.text.SimpleDateFormat@4f76f1a0"
答案 0 :(得分:0)
代码中的问题是SimpleDateFormat
是Date
的格式化程序。
首先需要java.util.Date
,然后您可以使用格式化程序
import java.util.Date
import java.text.SimpleDateFormat
val sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
val d = new Date()
val dateString = sdf.format(d)
println(dateString)
//output: 2018-02-20 10:00:00
答案 1 :(得分:0)
java.util.Date
API有点过时,我强烈反对您不使用它。使用(更加理智)java.time
代替。
如果您决定切换到java.time
,请参阅以下答案。
代码中的SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
仅实例化格式化程序。它不会产生任何日期
格式。字符串“java.text.SimpleDateFormat@4f76f1a0”不是格式正确的日期,它只是格式化程序的标准toString
方法的输出。为了获得格式化日期的字符串表示,您必须:
使用java.time
,这看起来有点像这样:
import java.time._
import java.time.format._
val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
val currentDateInUTC = ZonedDateTime.now(ZoneId.of("UTC"))
val date1: String = formatter format currentDateInUTC
println(date1)
打印:
2018-02-20 17:57:28