I'm new to Java/Groovy development and I have a simple string that I would like to reformat, however I get an 'Unparseable date' error when I attempt to run the following:
import java.text.SimpleDateFormat
import java.util.Date
String oldDate
Date date
String newDate
oldDate = '04-DEC-2012'
date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S").parse(oldDate)
newDate = new SimpleDateFormat("M-d-yyyy").format(date)
println newDate
I'm sure it's something simple, but the solution eludes me. Can anyone help?
SimpleDateFormat
andDate
. Those classes are poorly designed and long outdated, the former in particular notoriously troublesome. Instead useLocalDate
,DateTimeFormatterBuilder
andDateTimeFormatter
, all from java.time, the modern Java date and time API. See this answer by user7605325. – Stercoricolous