String time1= "12:45 PM"; Device1 default format ,
String time2= "12:45 p.m."; Device2 default format
Diese beiden Zeiten sind gleich, aber sieht in verschiedenen Geräten unterschiedlich Format. Testen mit remi note4 (time1 format) und Samsung j7 (time2 format). Wenn ich ein Gerät mit dem Standard-Zeitformat 'time1' verwende, kann ich das String-Format 'time2' nicht in timestamp
konvertieren. Der Logger zeigt das Parsing-Datum nicht an. Wie kann ich dieses Problem lösen? Hinweis: Die Zeit für die Konvertierung wird vom Server als JSON-Zeichenfolgenformat abgerufen.Android Zeitformat Problem auf verschiedenen Geräten
Wahrscheinlich hängt dies mit dem Standardgebietsschema jedes Geräts zusammen. Überprüfen Sie, ob Sie mit der Klasse 'java.util.Locale' das Ergebnis von' Locale.getDefault() 'auf jedem Gerät sehen. Sie werden wahrscheinlich anders sein, daher müssen Sie jedes einzelne basierend auf seinen Gebietsschemas analysieren und formatieren. Außerdem ist mir nicht klar, welchen Wert Sie vom Server erhalten und in welches Format Sie konvertieren möchten. –
Konvertierung in 'Long' Zeitstempel. Ich habe noch einen Zweifel. Wenn ich beide Stringtypen gleichzeitig in einen Timestamp umwandele, sind die Timestamps dann gleich? –
Wenn dieser "lange" Zeitstempel "die Anzahl der Millisekunden von Epoche (' 1907-01-01T00: 00Z' "ist, dann benötigen Sie alle Datums- und Uhrzeitfelder (Tag, Monat, Jahr, Stunde, Minuten, Sekunden (optional Bruch) (Sekunden) und die Zeitzone. Mit ** nur ** Stunde und Minute, können Sie diesen Zeitstempelwert nicht erhalten. –