В цели c, каков правильный формат даты для «2011-05-10T14: 30: 00 0000»? - PullRequest
1 голос
/ 10 мая 2011

Я знаю, что «2011-05-10T14: 30: 00-0000» это ]; " работает. Но просто не мог понять, как настроить формат, чтобы он знал, что часовой пояс имеет знак пробела перед знаком «-»? Спасибо!

Ответы [ 2 ]

2 голосов
/ 11 мая 2011

1..3 заглавная Z шаблон обозначает часовой пояс RFC 822. Часовые пояса RFC 822 представляют смещение от GMT (или UTC), которое имеет следующий формат. Из стандарта RFC 822 :

zone             =  "UT"  / "GMT"                ; Universal Time
                                                 ; North American : UT
                 /  "EST" / "EDT"                ;  Eastern:  - 5/ - 4
                 /  "CST" / "CDT"                ;  Central:  - 6/ - 5
                 /  "MST" / "MDT"                ;  Mountain: - 7/ - 6
                 /  "PST" / "PDT"                ;  Pacific:  - 8/ - 7
                 /  1ALPHA                       ; Military: Z = UT;
                                                 ;  A:-1; (J not used)
                                                 ;  M:-12; N:+1; Y:+12
                 / ( ("+" / "-") 4DIGIT )        ; Local differential
                                                 ;  hours+min. (HHMM)

Поскольку вы можете читать до конца, он ожидает знак «+» или «-». Итак, в вашем случае, отсутствие знака означает положительное «+» или отрицательное «-» смещение?

Вы можете вручную предварительно проанализировать вашу строку, добавив пропущенный знак, чтобы соответствовать спецификации.

0 голосов
/ 10 мая 2011

Просто замените '-' на '' в синтаксисе формата даты (внутри одинарных кавычек есть пробел)

...