DateTimeFormatter.WithChronology(IChronology) 方法

定义

返回此格式化程序的副本,其中包含新的替代计时表。

[Android.Runtime.Register("withChronology", "(Ljava/time/chrono/Chronology;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)]
public Java.Time.Format.DateTimeFormatter? WithChronology(Java.Time.Chrono.IChronology? chrono);
[<Android.Runtime.Register("withChronology", "(Ljava/time/chrono/Chronology;)Ljava/time/format/DateTimeFormatter;", "", ApiSince=26)>]
member this.WithChronology : Java.Time.Chrono.IChronology -> Java.Time.Format.DateTimeFormatter

参数

chrono
IChronology

新的时序,如果没有替代,则为 null

返回

一个格式化程序,基于此格式化程序,其请求的替代计时,而不是 null

属性

注解

返回此格式化程序的副本,其中包含新的替代计时表。

这会返回一个格式化程序,该格式化程序的状态与此格式化程序类似,但设置了替代计时表。 默认情况下,格式化程序没有替代计时表,返回 null。

如果添加了替代,则格式化或分析的任何日期都将受到影响。

格式设置时,如果临时对象包含日期,则会将其转换为替代计时表中的日期。 临时是否通过查询 ChronoField#EPOCH_DAY EPOCH_DAY 字段来确定时态是否包含日期。 除非重写,否则任何时区都将保留不变。

如果临时对象不包含日期,但包含一个或多个 ChronoField 日期字段,则会引发一个 DateTimeException 。 在所有其他情况下,替代计时表将添加到时态,替换任何以前的计时表,但不更改日期/时间。

分析时,需要考虑两种不同的情况。 如果已直接从文本分析计时表,可能是因为 DateTimeFormatterBuilder#appendChronologyId() 使用了,则此替代计时表不起作用。 如果没有分析区域,则此替代时间表将用于根据时间顺序解析规则将值解释 ChronoField 为日期。

此实例不可变,不受此方法调用影响。

Java文档java.time.format.DateTimeFormatter.withChronology(java.time.chrono.Chronology)

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

适用于