Я пытаюсь выяснить математику, чтобы убедиться, что сдвиги получают правильные разрывы, когда я запрашиваю API, я получаю следующий ответ:
"StartDate": "4/25/2018",
"EndTime": "8:30PM",
"StartDayNumber": 1,
"StartTime": "7:30PM",
"SegmentTypeName": "BREAK",
"EndDate": "4/25/2018",
"EndDayNumber": 1
Я пробовал различные попытки использования LocalTime
, поэтомуЯ могу использовать функцию Duration
:
LocalTime start = LocalTime.parse(employeeShift.getJSONObject(ii).get("StartTime").toString(), DateTimeFormatter.ofPattern("HH:mm a"));
LocalTime end = LocalTime.parse(employeeShift.getJSONObject(ii).get("EndTime").toString());
Я пробовал различные способы преобразования EndTime и StartTime в местное время.Тем не менее, я озадачен тем, что перепробовал различное количество форматеров, включая день, час, но я не нашел пример, включающий am / pm. Нужно ли сначала преобразовывать время в 24 часа?
Ошибка, которую я получил:
java.time.format.DateTimeParseException: текст '1:00 PM' не может быть проанализирован с индексом 0