Muss ich mir wegen dieser Warnung Sorgen machen? Was passiert, wenn ich die Warnung ignoriere?
Was diese Warnung bedeutet das:
Um lokale Formatierung getDateInstance()
, getDateTimeInstance()
oder getTimeInstance()
verwenden oder new SimpleDateFormat(String template, Locale locale)
verwendet mit zum Beispiel Locale.US
für ASCII
Daten.
In der 2. Zeile des Codes unten. Die App funktioniert gut mit dem Code. Ich wollte das Datum anzeigen, zB 19 Nov 2014
.Warnung zu SimpleDateFormat Um lokale Formatierung zu erhalten, verwenden Sie getDateInstance(), getDateTimeInstance() oder getTimeInstance(),
public static String getFormattedDate(long calendarTimeInMilliseconds) {
SimpleDateFormat sdfDate = new SimpleDateFormat("d MMM yyyy"); //ON THIS LINE
Date now = new Date();
now.setTime(calendarTimeInMilliseconds);
String strDate = sdfDate.format(now);
return strDate;
}
Ich denke, das ist eine richtige Art und Weise Datum zu formatieren als here gezeigt.
Simple sdfDate = new Simple ("d MMM yyyy", Locale.getDefault()); Wird dies das Datum wie 19 Nov 2014 oder "d MMM yyyy" auch in anderer Sprache formatieren? –
Die Vorlage wird immer noch "d MMM yyyy" bleiben, was für "Tag im Monat", "Monat im Jahr", "Jahr" steht, wie in [SimpleDateFormat] (http://developer.android.com/) zu sehen ist. Referenz/java/text/SimpleDateFormat.html), aber der beste Weg, um sicherzustellen, ist, sich selbst zu testen, indem Sie Ihr Gerät/Emulator auf ein benutzerdefiniertes Gebietsschema umschalten, das Ihnen zeigen wird, wie es im wirklichen Leben funktioniert. –
Locale.getDefault(). Daher ist das Standardgebietsschema für Aufgaben geeignet, bei denen dem Benutzer Daten präsentiert werden. In diesem Fall möchten Sie die Datums-/Uhrzeitformate des Benutzers, Zahlenformate, Regeln für die Umwandlung in Kleinbuchstaben usw. verwenden. In diesem Fall ist es sicher, die Bequemlichkeitsmethoden zu verwenden. –