String timestamp Calendar in Java?

Einer einfachen Frage, die ich nicht finden kann eine Antwort.
Ich habe einen String, der ein Zeitpunkt ist, möchte ich es in ein Kalender-Objekt, damit ich dann anzeigen kann, es in meiner Android-Anwendung.

Den code, den ich bisher zeigt alles, macht alles, was in den 1970er-Jahren:s.

String timestamp = parameter.fieldParameterStringValue;
timestampLong = Long.parseLong(timestamp);
Date d = new Date(timestampLong);
Calendar c = Calendar.getInstance();
c.setTime(d);
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int date = c.get(Calendar.DATE);

dateTextView.setText(year + "-" + month + 1 + "-" + date);

UPDATE:
Nur zur info, der Zeitstempel wird vom server ist: 1369148661,
Könnte das falsch sein?

  • wo sind Sie immer die timestamp aus? Einige API-ich weiß-Streifen aus den 1000, um Platz zu sparen. d.h. eine Sekunde Genauigkeit
  • Von einem server, die wir betreiben. Der timestamp ist richtig, ich"ve dreifach geprüft die Wert-und es ist korrekt vom server.
  • Sie könnten versuchen, zu tun c.setTimeInMillis(timestampLong); zu sehen, wenn Sie haben das gleiche Ergebnis ?
  • Haben Sie versucht, SimpleDate?
  • Funktioniert nicht
  • und Ja, das funktioniert auch nicht.
  • ist der timestamp, Sie werden immer vom server in Sekunden oder Millisekunden? Einige Server werden mit Sekunden-für den Zeitstempel, so dass Sie möglicherweise multiplizieren Sie mit 1000
  • Dein code ist gut. Der String timestamp falsch ist.
  • Ich habe auch versucht, aber es scheint nicht zu funktionieren. Der Wert ist in Sekunden, ich bin mir ziemlich sicher.
  • Ja, ich weiß, aber ich bekomme die gleiche Antwort. Ich aktualisiert die Frage.
  • Okay, nochmal getestet, und dann funktioniert alles, außer der mont, die zeigt 41.
  • Okay erkannte, was ich falsch gemacht habe jetzt.

Schreibe einen Kommentar