0
ich eine Zeichenfolge habe, könnte es sein:String Match-Zeitstempel zu lange in scala
- "unbekannt"
- digitale Kette von Zeitstempeln wie
"1487905455000"
- formatierte Datum Zeichenfolge wie
"Tue Feb 14 11:27:07 +0800 2017"
Ich möchte dies zu Unix Zeitstempel als je nach Fall übertragen:
- „unbekannt“ wird
-1
- Reihe von Zeitstempel auf den Long-Wert übertragen werden übertragen werden
1487905455000L
- formatiert Datum Zeichenfolge
so hier zeitzustempeln werden analysiert wird, ist, was ich denke dazu:
createTimeStamp = {
createTimestamp match {
case "unknown" => -1L
case isDAlldigitas(x) => x.toLong
caes _ => {
val format = new SimpleDateFormat("EEE MMM dd HH:mm:ss Z yyyy")
Try(format.parse(_).getTime) match {
case Success(t) => t
case Failure(_) => -1L
}
}
}
}
Der obige Code funktioniert nicht, aber ich weiß nicht, was ich falsch gemacht habe.
Hallo, danke für die Antwort, aber was, wenn format.parse (x) eine Ausnahme ergeben? – armnotstrong
@armnotstrong Ich nahm an, dass wir immer die Daten im richtigen Format bekommen. Jetzt habe ich die Antwort aktualisiert –
Dank Rogue, fand ich die Streichholzschachtel für scala ist schwer zu verstehen und die beste Praxis zu machen. Nochmals vielen Dank, ich werde versuchen dies – armnotstrong