我有从字符串名称派生的字符串列表,如下所示。如何将字符串列表转换为LocalDate类型Scala中的格式
List(20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625)
我想将这整个元素列表转换为本地日期类型格式。我用Scala语言编写代码。任何人都可以帮我吗?
我有从字符串名称派生的字符串列表,如下所示。如何将字符串列表转换为LocalDate类型Scala中的格式
List(20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625)
我想将这整个元素列表转换为本地日期类型格式。我用Scala语言编写代码。任何人都可以帮我吗?
你可以试试下面的代码:
import java.time.LocalDate
import java.time.format.DateTimeFormatter
val inputTimes = List(20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625)
val dtf = DateTimeFormatter.ofPattern("yyyyMMdd")
val dates = inputTimes.map(date => LocalDate.parse(date.toString, dtf))
dates
您也可以指定一个新的语言环境
import java.time.LocalDate
import java.time.format.DateTimeFormatter
val inputTimes = List(20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625)
val dtf = DateTimeFormatter.ofPattern("yyyyMMdd")
val dtfWithLocale = dtf.withLocale(java.util.Locale.US)
val dates = inputTimes.map(date => LocalDate.parse(date.toString, dtfWithLocale))
dates
dates
是结果。
,如果你想将其转换为YYYY-MM-DD
格式,你可以做这样的事情
scala> val list = List("20170625", "20170625", "20170625", "20170625", "20170625", "20170625", "20170625", "20170625")
list: List[String] = List(20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625)
scala> import java.time.LocalDate
import java.time.LocalDate
scala> list.map(input => LocalDate.parse(s"${input.substring(0,4)}-${input.substring(4,6)}-${input.substring(6,8)}"))
res11: List[java.time.LocalDate] = List(2017-06-25, 2017-06-25, 2017-06-25, 2017-06-25, 2017-06-25, 2017-06-25, 2017-06-25, 2017-06-25)
嗨..这是返回列表包含日期类型元素? –
此代码再次返回字符串类型元素 –
我想将字符串类型转换为LocalDate类型的格式。没有字符串类型 –
要转换为java.util.Date你可以使用字符串:
val df = new SimpleDateFormat("yyyyMMdd")
list.map(df.parse(_))
对于LOCALDATE的使用
list.map(LocalDate.parse(_, DateTimeFormatter.ofPattern("yyyyMMdd")))
我想将String类型转换为LocalDate类型的格式。 –
该拆分是粗略实现。但是应该工作
def split(i: Int): LocalDate = {
val date = i % 100
val rem = i/100
val mon = rem % 100
val r = rem/100
LocalDate.of(r, mon, date)
}
def main(args: Array[String]): Unit = {
val l = List(20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625, 20170625)
val x = l.map(split)
}
什么格式的日期? –
你试过了什么?如果我要转换它,我将遍历每个项目然后单独转换它 – Kokombads
我想将字符串转换为LocalDate格式。 –