Красота нотации ISO 8601, которую вы показываете, состоит в том, что сравнение строк между двумя датами говорит вам об относительных порядках. Если все даты, которые нужно сравнить, являются AD (или CE), а не BC (или BCE) и выражены в одном часовом поясе, то это тривиально:
2010-07-26 18:37:12 > 2001-10-31 15:36:21
2010-07-26 18:37:12 < 2010-12-25 00:00:00
Если вам нужно работать с другими форматами даты, тогда strptime()
ваш друг.
У меня есть программа (образно названная strptime ), которая будет выполнять эту работу (см. Мой профиль, чтобы связаться со мной); Есть, вероятно, другие инструменты для этого. Однако даже strptime()
имеет некоторые проблемы с часовыми поясами, особенно с именованными часовыми поясами, а не с чисто числовыми смещениями.