在Scala中获取一年前的确切日期。

huangapple go评论56阅读模式
英文:

Exact 1 year previous date in Scala

问题

我有一个日期字符串,格式如下 - 190515(YYMMDD)。如何从中获取并填充一个确切的一年前的日期?即,预期答案是 - 180515 (YYMMDD)。我在Scala中尝试了以下方法。但是我得到了以下异常 - 无法解析文本'190515'

import java.time.LocalDateTime
import java.time.format.{ DateTimeFormatter, DateTimeParseException }
val d1 = LocalDateTime.parse("190515", DateTimeFormatter.ofPattern("yyMMdd"))
d1.minusYears(1)
英文:

I have a date string like this - 190515(YYMMDD) format. How to get a populate a exact one year previous date from this? ie, Expected Answer - 180515 (YYMMDD). I am using Scala for this.

I have tried the below. But am getting the below exception - Text '190515' could not be parsed

 import java.time.LocalDateTime
 import java.time.format.{ DateTimeFormatter, DateTimeParseException }
 val d1 =LocalDateTime.parse("190515",DateTimeFormatter.ofPattern("yyMMdd"))
 d1.minusYears(1)

答案1

得分: 4

LocalDateTime 用于具有日期和时间精度的时间点。而你只有日期,所以应该使用 LocalDate

英文:

LocalDateTime is used for points of time having both a date and a time precision. Yours only have a date, so you should be using LocalDate

huangapple
  • 本文由 发表于 2020年1月3日 18:43:03
  • 转载请务必保留本文链接:https://go.coder-hub.com/59577131.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定