-1
Ich benutze diese Methode, um Zeit in den Kalender zu setzen, aber wenn ich Monat bekommen will, wird es mir Monat-1 geben.Kalender mit spezifischem Datum einstellen und falsche Werte für Monat erhalten
Zum Beispiel, wenn ich "2017-12-27 10:50:00" einstellen. Und wenn ich den Monat des Kalenders erhalten möchten ist es 11 statt 12.
public String setDate(String gDate){
try {
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(gDate);
javaCalendar.setTime(date);
} catch (ParseException e) {
e.printStackTrace();
Log.i("LOG_DATE", "Error is: " + e.toString());
}
return "";
}
Es beginnt mit 0. Es ist 0 bis 11. –
teilen Sie Code, um Kalendermonat zu erhalten –
Denken Sie sogar an Android, die alten Klassen "Date", "Calendar" und "SimpleDateFormat" zu löschen und 'LocalDateTime' und' DateTimeFormatter' zu verwenden von JSR-310, der modernen Java-API für Datum und Uhrzeit. Es ist so viel schöner, damit zu arbeiten. Und geben Sie den 12. Monat entweder als "Monat.DECEMBER" oder 12, wählen Sie. Um JSR-310 unter Android zu verwenden, fügen Sie [ThreeTenABP] (https://github.com/JakeWharton/ThreeTenABP) zu Ihrem Projekt hinzu. –