Вопрос: "Если дата рождения 01-12 наше ПО иногда меняет её на 12-01"
Такое поведение связано с локалью и форматом даты Вашей ОС, а так же с тем, как Ваше ПО работает с датами. Также, имеет значение откуда Вы забираете результат текстового поля: из текстовых результатов визуальной зоны/МСЗ или из результатов лексического анализа:
- Результаты визуальной зоны и МСЗ содержат символы в том же виде, в котором они были прочитаны на документе (например: 24 09 1982 из визуальной зоны и 820924 из МСЗ)
- Результат лексического анализа форматируется в соответствии с форматом даты Вашей системы (может быть MM/dd/yyyy для США, dd.MM.yyyy для большинства европейских стран, или ваш пользовательский формат, например yyyy-MM-dd).
Настоятельно рекомендуется использовать результаты лексического анализа по следующим причинам:
- даты форматируются в соответствии с Вашей локалью.
- даты содержав век и Вам не нужно о нем заботиться (например: 820924 становится 24.09.1982, и 230709 становится 09.07.2023).
Небольшой совет: пользовательское ПО должно работать с датами в формате текущей локали для предотвращения путаницы.
Комментарии
Статья закрыта для комментариев.