JodaTime синтаксический анализ неправильно "PM" - но только на реальном устройстве (работает хорошо в локальном тесте)

Я использую JodaTime 2.9.9:

implementation 'joda-time:joda-time:2.9.9'

Я анализирую ту же строку даты / времени в локальном UnitTest (test) и на Инструментированном UnitTest (androidTest).

Код синтаксического анализа:

    String testString = "1/25/2018 5:03:12 PM";
    System.out.println("FOO - str: '" + testString + "' length: " + testString.length());
    DateTime res = DateTime.parse(testString, DateTimeFormat.forPattern("MM/dd/yyyy hh:mm:ss a"));
    System.out.println("FOO - prs: " + res.toString());
    assertEquals("Month: ", 1, res.getMonthOfYear());
  • On Local UnitTest (test) - тесты проходят:

FOO - str: '1/25/2018 5:03:12 PM' length: 20 FOO - prs: 2018-01-25T17:03:12.000Z

  • На Инструментированном UnitTest (androidTest) - тест не пройден:

java.lang.IllegalArgumentException: Invalid format: "1/25/2018 5:03:12 PM" is malformed at "PM" at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:945)

Зачем?

0 ответов

Другие вопросы по тегам