Using DateString
and StringSplit
:
dstr = DateString[ToString@19001231, "ISODate"]
"1900-12-31"
ToExpression@StringSplit[dstr, Except[DigitCharacter]]
{1900, 12, 31}
The shortest form (Thanks to @eldo!):
StringSplit[DateString[19001231, "ISODate"], "-"]