Freigeben über


DateTimeFormatter.WithZone(ZoneId) Methode

Definition

Gibt eine Kopie dieses Formatierers mit einer neuen Überschreibungszone zurück.

[Android.Runtime.Register("withZone", "(Ljava/time/ZoneId;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)]
public Java.Time.Format.DateTimeFormatter? WithZone (Java.Time.ZoneId? zone);
[<Android.Runtime.Register("withZone", "(Ljava/time/ZoneId;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)>]
member this.WithZone : Java.Time.ZoneId -> Java.Time.Format.DateTimeFormatter

Parameter

zone
ZoneId

die neue Außerkraftsetzungszone, null, wenn keine Außerkraftsetzung erfolgt

Gibt zurück

ein Formatierer basierend auf diesem Formatierer mit der angeforderten Außerkraftsetzungszone, nicht NULL

Attribute

Hinweise

Gibt eine Kopie dieses Formatierers mit einer neuen Überschreibungszone zurück.

Dadurch wird ein Formatierer mit einem ähnlichen Zustand wie dieser Formatierer zurückgegeben, jedoch mit dem Zonensatz außer Kraft gesetzt. Standardmäßig weist ein Formatierer keine Außerkraftsetzungszone auf, wobei null zurückgegeben wird.

Wenn eine Außerkraftsetzung hinzugefügt wird, sind alle sofort formatierten oder analysierten Elemente betroffen.

Wenn das zeitliche Objekt einen Sofortigen enthält, wird es mithilfe der Außerkraftsetzungszone in eine zeitzonenbezogene Datums-Uhrzeit konvertiert. Gibt an, ob es sich bei dem zeitlichen Umdrehen um einen Sofortigen handelt, indem das ChronoField#INSTANT_SECONDS INSTANT_SECONDS Feld durch Abfragen des Felds bestimmt wird. Wenn die Eingabe über eine Chronologie verfügt, wird sie beibehalten, es sei denn, sie wird überschrieben. Wenn die Eingabe nicht über eine Chronologie verfügt, z Instant. B. , wird die ISO-Chronologie verwendet.

Wenn das zeitliche Objekt keinen Sofortigen enthält, aber einen Offset enthält, wird eine zusätzliche Überprüfung durchgeführt. Wenn die normalisierte Überschreibungszone ein Offset ist, der sich vom Offset des zeitlichen Abstands unterscheidet, wird ein DateTimeException Wurf ausgelöst. In allen anderen Fällen wird die Außerkraftsetzungszone dem zeitlichen Bereich hinzugefügt, wobei jede vorherige Zone ersetzt wird, ohne das Datum/die Uhrzeit zu ändern.

Bei der Analyse müssen zwei verschiedene Fälle berücksichtigt werden. Wenn eine Zone direkt aus dem Text analysiert wurde, vielleicht weil DateTimeFormatterBuilder#appendZoneId() sie verwendet wurde, hat diese Überschreibungszone keine Auswirkung. Wenn keine Zone analysiert wurde, wird diese Außerkraftsetzungszone in das Ergebnis der Analyse einbezogen, in der sie zum Erstellen von Instants und Datumszeiten verwendet werden kann.

Diese Instanz ist unveränderlich und von diesem Methodenaufruf nicht betroffen.

Java-Dokumentation für java.time.format.DateTimeFormatter.withZone(java.time.ZoneId).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: