2014-10-31 5 views
1

Есть ли способ отформатировать соответствующий день и месяц без через год через Win32 (на C++)? Например, я хотел бы видеть 10/31 для локали США и 31/10 для британского языка. Я знаю, что GetDateFormat принимает строку формата, но затем день и месяц блокируются во все позиции, которые я указываю в строке формата, что не подходит для всех локалей.Формат - соответствующий день и месяц без года

ответ

3

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

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

+0

Thanks Jonathan! Я натолкнулся на идею использования GetLocaleInfo для запроса моментов формата до того, как я увижу ваш ответ, так что хорошо знать, что я, похоже, лаем по правильному дереву с этим. Полезно знать и о LOCALE_IDATE. –

Смежные вопросы