Существует ли какой-либо стандарт для представления диапазонов дат?
ISO 8601 представляет дату в YYYY-MM-DD
.
Кажется, он не дает никаких рекомендаций относительно того, как представлять диапазон дат, например:
2013-01-01 => 2013-06-31
Дает ли ISO 8601 или другой стандарт разумную рекомендацию для представления диапазонов дат?
Фон: это должно использоваться как выход метода toString()
объекта DateRange
, выход которого затем может быть проанализирован методом parse()
.
Ответы
Ответ 1
ISO 8601 имеет стандарт для представления диапазонов дат. Чтобы представить дату начала и окончания, используя этот формат, вы должны написать:
2013-01-01/2013-06-31
Обратите внимание, как косая черта используется в качестве указателя интервала для разделения дат начала и окончания.
Смотрите здесь для получения дополнительной информации.
Ответ 2
Чтобы добавить ответ Бена Смита выше, в стандарте также упоминается использование двойного переноса (--
) в качестве обозначения интервала в определенных контекстах вместо косой черты (/
). Например, в именах файлов или каталогов, где использование косой черты запрещено в большинстве операционных систем.
Таким образом, приведенные выше примеры будут
2013-01-01--2013-06-31
или же
2013-01-01--06-31
в сокращенном виде