Condividi tramite


DateTimeFormatter.WithResolverFields Metodo

Definizione

Overload

WithResolverFields(ITemporalField[])
WithResolverFields(ICollection<ITemporalField>)

Restituisce una copia di questo formattatore con un nuovo set di campi resolver.

WithResolverFields(ITemporalField[])

[Android.Runtime.Register("withResolverFields", "([Ljava/time/temporal/TemporalField;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)]
public Java.Time.Format.DateTimeFormatter? WithResolverFields (params Java.Time.Temporal.ITemporalField[]? resolverFields);
[<Android.Runtime.Register("withResolverFields", "([Ljava/time/temporal/TemporalField;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)>]
member this.WithResolverFields : Java.Time.Temporal.ITemporalField[] -> Java.Time.Format.DateTimeFormatter

Parametri

resolverFields
ITemporalField[]

Restituisce

Attributi

Si applica a

WithResolverFields(ICollection<ITemporalField>)

Restituisce una copia di questo formattatore con un nuovo set di campi resolver.

[Android.Runtime.Register("withResolverFields", "(Ljava/util/Set;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)]
public Java.Time.Format.DateTimeFormatter? WithResolverFields (System.Collections.Generic.ICollection<Java.Time.Temporal.ITemporalField>? resolverFields);
[<Android.Runtime.Register("withResolverFields", "(Ljava/util/Set;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)>]
member this.WithResolverFields : System.Collections.Generic.ICollection<Java.Time.Temporal.ITemporalField> -> Java.Time.Format.DateTimeFormatter

Parametri

resolverFields
ICollection<ITemporalField>

nuovo set di campi resolver, null se non sono presenti campi

Restituisce

formattatore basato su questo formattatore con lo stile del resolver richiesto, non null

Attributi

Commenti

Restituisce una copia di questo formattatore con un nuovo set di campi resolver.

Viene restituito un formattatore con stato simile a questo formattatore, ma con il set di campi resolver. Per impostazione predefinita, un formattatore non dispone di campi resolver.

La modifica dei campi del sistema di risoluzione ha effetto solo durante l'analisi. L'analisi di una stringa di testo avviene in due fasi. La fase 1 è un'analisi di testo di base in base ai campi aggiunti al generatore. La fase 2 risolve le coppie di valori di campo analizzate in oggetti data e/o ora. I campi resolver vengono usati per filtrare le coppie di valori di campo tra la fase 1 e 2.

Questa opzione può essere usata per selezionare tra due o più modi in cui è possibile risolvere una data o un'ora. Ad esempio, se il formattatore è costituito da anno, mese, giorno del mese e giorno dell'anno, esistono due modi per risolvere una data. La chiamata a questo metodo con gli ChronoField#YEAR YEAR argomenti e ChronoField#DAY_OF_YEAR DAY_OF_YEAR garantisce che la data venga risolta usando l'anno e il giorno dell'anno, ovvero il mese e il giorno del mese vengono ignorati durante la fase di risoluzione.

In modo analogo, questo metodo può essere usato per ignorare i campi secondari che altrimenti verrebbero controllati tra loro. Ad esempio, se il formattatore è costituito da anno, mese, giorno del mese e giorno della settimana, esiste solo un modo per risolvere una data, ma il valore analizzato per il giorno della settimana verrà controllato incrociato rispetto alla data risolta. La chiamata a questo metodo con gli ChronoField#YEAR YEARChronoField#MONTH_OF_YEAR MONTH_OF_YEAR argomenti e ChronoField#DAY_OF_MONTH DAY_OF_MONTH garantisce che la data venga risolta correttamente, ma senza alcun controllo incrociato per il giorno della settimana.

In termini di implementazione, questo metodo si comporta come segue. Il risultato della fase di analisi può essere considerato una mappa di campo a valore. Il comportamento di questo metodo consiste nel fare in modo che il mapping venga filtrato tra la fase 1 e 2, rimuovendo tutti i campi diversi da quelli specificati come argomenti a questo metodo.

Questa istanza non è modificabile e non influenzata da questa chiamata al metodo.

Documentazione java per java.time.format.DateTimeFormatter.withResolverFields(java.util.Set<java.time.temporal.TemporalField>).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a