Class LocalDatePattern
Represents a pattern for parsing and formatting LocalDate values.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Inherited Members
Namespace: NodaTime.Text
Assembly: NodaTime.dll
Syntax
public sealed class LocalDatePattern : IPattern<LocalDate>
Properties
FullRoundtrip
Gets an invariant local date pattern which round trips values including the calendar system.
This corresponds to the text pattern "uuuu'-'MM'-'dd '('c')'".
Since 3.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public static LocalDatePattern FullRoundtrip { get; }
Property Value
Type | Description |
---|---|
LocalDatePattern | An invariant local date pattern which round trips values including the calendar system. |
Remarks
This pattern corresponds to the 'r' standard pattern.
Iso
Gets an invariant local date pattern which is ISO-8601 compatible and which round trips values, but doesn't include the calendar system.
This corresponds to the text pattern "uuuu'-'MM'-'dd".
Since 1.4.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public static LocalDatePattern Iso { get; }
Property Value
Type | Description |
---|---|
LocalDatePattern | An invariant local date pattern which is ISO-8601 compatible. |
Remarks
This pattern corresponds to the 'R' standard pattern.
PatternText
Gets the pattern text for this pattern, as supplied on creation.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public string PatternText { get; }
Property Value
Type | Description |
---|---|
string | The pattern text for this pattern, as supplied on creation. |
TemplateValue
Gets the value used as a template for parsing: any field values unspecified
in the pattern are taken from the template.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public LocalDate TemplateValue { get; }
Property Value
Type | Description |
---|---|
LocalDate | The value used as a template for parsing. |
TwoDigitYearMax
Maximum two-digit-year in the template to treat as the current century.
If the value parsed is higher than this, the result is adjusted to the previous century.
This value defaults to 30. To create a pattern with a different value, use WithTwoDigitYearMax(int).
Since 3.2.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public int TwoDigitYearMax { get; }
Property Value
Type | Description |
---|---|
int | The value used for the maximum two-digit-year, in the range 0-99 inclusive. |
Methods
AppendFormat(LocalDate, StringBuilder)
Formats the given value as text according to the rules of this pattern,
appending to the given StringBuilder.
Since 2.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public StringBuilder AppendFormat(LocalDate value, StringBuilder builder)
Parameters
Type | Name | Description |
---|---|---|
LocalDate | value | The value to format. |
StringBuilder | builder | The StringBuilder to append to. |
Returns
Type | Description |
---|---|
StringBuilder | The builder passed in as builder . |
Create(string, CultureInfo)
Creates a pattern for the given pattern text and culture, with a template value of 2000-01-01.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public static LocalDatePattern Create(string patternText, CultureInfo cultureInfo)
Parameters
Type | Name | Description |
---|---|---|
string | patternText | Pattern text to create the pattern for |
CultureInfo | cultureInfo | The culture to use in the pattern |
Returns
Type | Description |
---|---|
LocalDatePattern | A pattern for parsing and formatting local dates. |
Remarks
See the user guide for the available pattern text options.
Exceptions
Type | Condition |
---|---|
InvalidPatternException | The pattern text was invalid. |
Create(string, CultureInfo, LocalDate)
Creates a pattern for the given pattern text, culture, and template value.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public static LocalDatePattern Create(string patternText, CultureInfo cultureInfo, LocalDate templateValue)
Parameters
Type | Name | Description |
---|---|---|
string | patternText | Pattern text to create the pattern for |
CultureInfo | cultureInfo | The culture to use in the pattern |
LocalDate | templateValue | Template value to use for unspecified fields |
Returns
Type | Description |
---|---|
LocalDatePattern | A pattern for parsing and formatting local dates. |
Remarks
See the user guide for the available pattern text options.
Exceptions
Type | Condition |
---|---|
InvalidPatternException | The pattern text was invalid. |
CreateWithCurrentCulture(string)
Creates a pattern for the given pattern text in the current thread's current culture.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public static LocalDatePattern CreateWithCurrentCulture(string patternText)
Parameters
Type | Name | Description |
---|---|---|
string | patternText | Pattern text to create the pattern for |
Returns
Type | Description |
---|---|
LocalDatePattern | A pattern for parsing and formatting local dates. |
Remarks
See the user guide for the available pattern text options. Note that the current culture
is captured at the time this method is called - it is not captured at the point of parsing
or formatting values.
Exceptions
Type | Condition |
---|---|
InvalidPatternException | The pattern text was invalid. |
CreateWithInvariantCulture(string)
Creates a pattern for the given pattern text in the invariant culture.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public static LocalDatePattern CreateWithInvariantCulture(string patternText)
Parameters
Type | Name | Description |
---|---|---|
string | patternText | Pattern text to create the pattern for |
Returns
Type | Description |
---|---|
LocalDatePattern | A pattern for parsing and formatting local dates. |
Remarks
See the user guide for the available pattern text options.
Exceptions
Type | Condition |
---|---|
InvalidPatternException | The pattern text was invalid. |
Format(LocalDate)
Formats the given local date as text according to the rules of this pattern.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public string Format(LocalDate value)
Parameters
Type | Name | Description |
---|---|---|
LocalDate | value | The local date to format. |
Returns
Type | Description |
---|---|
string | The local date formatted according to this pattern. |
Parse(string)
Parses the given text value according to the rules of this pattern.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public ParseResult<LocalDate> Parse(string text)
Parameters
Type | Name | Description |
---|---|---|
string | text | The text value to parse. |
Returns
Type | Description |
---|---|
ParseResult<LocalDate> | The result of parsing, which may be successful or unsuccessful. |
Remarks
This method never throws an exception (barring a bug in Noda Time itself). Even errors such as
the argument being null are wrapped in a parse result.
WithCalendar(CalendarSystem)
Creates a pattern like this one, but with the template value modified to use
the specified calendar system.
Since 2.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public LocalDatePattern WithCalendar(CalendarSystem calendar)
Parameters
Type | Name | Description |
---|---|---|
CalendarSystem | calendar | The calendar system to convert the template value into. |
Returns
Type | Description |
---|---|
LocalDatePattern | A new pattern with a template value in the specified calendar system. |
Remarks
Care should be taken in two (relatively rare) scenarios. Although the default template value is supported by all Noda Time calendar systems, if a pattern is created with a different template value and then this method is called with a calendar system which doesn't support that date, an exception will be thrown. Additionally, if the pattern only specifies some date fields, it's possible that the new template value will not be suitable for all values.
WithCulture(CultureInfo)
Creates a pattern for the same original pattern text as this pattern, but with the specified
culture.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public LocalDatePattern WithCulture(CultureInfo cultureInfo)
Parameters
Type | Name | Description |
---|---|---|
CultureInfo | cultureInfo | The culture to use in the new pattern. |
Returns
Type | Description |
---|---|
LocalDatePattern | A new pattern with the given culture. |
WithTemplateValue(LocalDate)
Creates a pattern like this one, but with the specified template value.
Since 1.0.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public LocalDatePattern WithTemplateValue(LocalDate newTemplateValue)
Parameters
Type | Name | Description |
---|---|---|
LocalDate | newTemplateValue | The template value for the new pattern, used to fill in unspecified fields. |
Returns
Type | Description |
---|---|
LocalDatePattern | A new pattern with the given template value. |
WithTwoDigitYearMax(int)
Creates a pattern like this one, but with a different TwoDigitYearMax value.
Since 3.2.x
Availability net6.0, net8.0, netstandard2.0
Declaration
public LocalDatePattern WithTwoDigitYearMax(int twoDigitYearMax)
Parameters
Type | Name | Description |
---|---|---|
int | twoDigitYearMax | The value to use for TwoDigitYearMax in the new pattern, in the range 0-99 inclusive. |
Returns
Type | Description |
---|---|
LocalDatePattern | A new pattern with the specified maximum two-digit-year. |