Gemäß the Talend docs ist es möglich, die Differenz zwischen zwei Daten mit TalendDate.dateDiffFloor
bis Sekunden und Millisekunden zu berechnen.Wie kann ich den Unterschied zwischen zwei Date-Instanzen in Minuten ermitteln?
Die Dokumentation sagt jedoch nicht, wie (oder welcher Formatparameter angegeben werden soll).
Ich muss diesen Wert in Sekunden erhalten, da es in eine tInfiniteLoop
Komponente einspeisen wird.
Ich habe mit "mmmm"
und "mm
" ohne Glück versucht. In diesem Fall bekomme ich den Fehler:
Exception in component tMap_3
java.lang.RuntimeException: Can't support the dateType: mm ,please try "yyyy" or "MM"
at routines.TalendDate.diffDateFloor(TalendDate.java:661)
at timeouttester.job_2_0_1.job_2.tInfiniteLoop_2Process(job_2.java:1156)
at timeouttester.job_2_0_1.job_2.runJobInTOS(job_2.java:1616)
at timeouttester.job_2_0_1.job_2.main(job_2.java:1464)
Welches Argument muss ich angeben, um Minuten zu erhalten? Und wenn nicht machbar, gibt es vielleicht einen Workaround in "Vanille" Java, wenn es nicht über Talend möglich ist?
Ich bin derzeit mit der folgenden Anweisung in einer tMap
Komponente:
TalendDate.diffDateFloor(TalendDate.parseDateInUTC("EEE, d MMM yyyy HH:mm:ss", Var.expires), TalendDate.getCurrentDate(), "mmmm")
Bitte poste deinen Code, damit wir helfen können. – lsiva
Da es ein Talend-Job ist, gibt es nicht viel Code ... Ich werde in dem, was ich bisher gemacht habe, bearbeiten. – exhuma
Sie können die zwei Daten mit der Java 8-API analysieren und es gibt eine Methode, mit der Sie ein Intervall in Minuten angeben können. –