Шаблон дроби Java DateTimeFormatter? - PullRequest
       6

Шаблон дроби Java DateTimeFormatter?

0 голосов
/ 07 сентября 2018

Есть ли шаблон, эквивалентный методу .appendFraction для DateTimeFormatter? Это то, что я хочу, но без необходимости включать .appendFraction () и окружающие .optional методы.

   DateTimeFormatter dateTimeFormatter = new DateTimeFormatterBuilder()
            .appendPattern( "[yyyy[-][ ]MM[-][ ]dd]['T'][' '][HH:mm[:][.]ss]" )
            .optionalStart()
            .appendFraction( ChronoField.MICRO_OF_SECOND , 1 , 6 , true )
            .optionalEnd()
            .appendPattern( "[Z][X]")
            .toFormatter();

Я бы хотел что-то вроде этого:

.appendPattern( "[yyyy[-][/]MM[-][/]dd['T'][ ]HH:mm[:][.]ss[.][SSSSSS][Z][X]]")

Но в приведенной выше схеме ожидаются 6 микросекундных цифр.

1 Ответ

0 голосов
/ 07 сентября 2018

Вы можете использовать "замечательный" хак, подобный этому, чтобы иметь возможность проанализировать вашу переменную дробь:

DateTimeFormatter dateTimeFormatter=DateTimeFormatter.ofPattern("[yyyy[-][ ]MM[-][ ]dd]['T'][' '][HH:mm[:][.]ss][.][SSSSSS][SSSSS][SSSS][SSS][SS][S][Z][X]");
...