@Documented @Retention(value=RUNTIME) @Target(value=FIELD) @Repeatable(value=CsvDates.class) public @interface CsvDate
Conversion to the following old-style types is supported:
DateCalendar (a GregorianCalendar is returned)GregorianCalendarXMLGregorianCalendarDateTimeTimestampConversion to the following TemporalAccessor-style
types is supported:
TemporalAccessor. If this interface is
used, the actual type returned is not defined.ChronoLocalDate. If this interface is used, the
actual type returned is LocalDate.LocalDateChronoLocalDateTime. If this interface is used,
the actual type returned is LocalDateTime.LocalDateTimeChronoZonedDateTime. If this interface is used,
the actual type returned is ZonedDateTime.ZonedDateTimeTemporal. If this interface is used, the
actual type returned is not defined.Era. If this interface is used, the actual type
returned is IsoEra.IsoEraDayOfWeekHijrahDateHijrahEraInstantJapaneseDateJapaneseEraLocalTimeMinguoDateMinguoEraMonthMonthDayOffsetDateTimeOffsetTimeThaiBuddhistDateThaiBuddhistEraYearYearMonthZoneOffsetThis annotation must be used with either CsvBindByName
or CsvBindByPosition, otherwise it is ignored.
| Modifier and Type | Optional Element and Description |
|---|---|
String |
chronology
The
Chronology that should be used for parsing. |
String[] |
profiles
A profile can be used to annotate the same field differently for
different inputs or outputs.
|
String |
value
A date/time format string.
|
String |
writeChronology
The
Chronology that should be used for
formatting. |
boolean |
writeChronologyEqualsReadChronology
Whether or not the same chronology string is used for writing as for
reading.
|
String |
writeFormat
A date/time format string.
|
boolean |
writeFormatEqualsReadFormat
Whether or not the same format string is used for writing as for reading.
|
public abstract String value
SimpleDateFormat(java.lang.String).
If it is applied to TemporalAccessor-based
dates and times, then this must be a string understood by
DateTimeFormatter.
The default value works for both styles and conforms with
ISO 8601. Locale
information, if specified, is gleaned from one of the other CSV-related
annotations and is used for conversion.public abstract boolean writeFormatEqualsReadFormat
value() is used for both reading and writing
and writeFormat() is ignored.public abstract String writeFormat
value(),
writeFormatEqualsReadFormat()public abstract String chronology
Chronology that should be used for parsing.
The value must be understood by
Chronology.of(String). The requisite ID for the
desired Chronology can usually be found in the Javadoc for the
getId() method of the specific implementation.
This value is only used for
TemporalAccessor-based fields. It is ignored
for old-style dates and times.
The default value specifies the ISO-8601 chronology. If a blank
string or empty string is specified, the chronology is
taken from the locale.
Chronology in usepublic abstract boolean writeChronologyEqualsReadChronology
chronology() is used for both reading and
writing and writeChronology() is ignored.public abstract String writeChronology
Chronology that should be used for
formatting.Chronology in usechronology(),
writeChronologyEqualsReadChronology()public abstract String[] profiles
Perhaps you have multiple input sources, and they all use different header names or positions for the same data. With profiles, you don't have to create different beans with the same fields and different annotations for each input. Simply annotate the same field multiple times and specify the profile when you parse the input.
The same applies to output: if you want to be able to represent the same data in multiple CSV formats (that is, with different headers or orders), annotate the bean fields multiple times with different profiles and specify which profile you want to use on writing.
Results are undefined if profile names are not unique.
If the same configuration applies to multiple profiles, simply list all applicable profile names here. This parameter is an array of strings.
The empty string, which is the default value, specifies the default profile and will be used if no annotation for the specific profile being used can be found, or if no profile is specified.
Copyright © 2005–2025. All rights reserved.