Поделиться через


Функция GetTimeFormatA (datetimeapi.h)

Форматирует время в виде строки времени для языкового стандарта, заданного идентификатором. Функция форматирует заданное время или локальное системное время.

Примечание В целях взаимодействия приложение должно предпочесть функцию GetTimeFormatExgetTimeFormat , так как корпорация Майкрософт переходит на использование имен языковых стандартов вместо идентификаторов языкового стандарта для новых языковых стандартов. Любое приложение, которое будет выполняться только в Windows Vista и более поздних версий, должно использовать GetTimeFormatEx.
 

Синтаксис

int GetTimeFormatA(
  [in]            LCID             Locale,
  [in]            DWORD            dwFlags,
  [in, optional]  const SYSTEMTIME *lpTime,
  [in, optional]  LPCSTR           lpFormat,
  [out, optional] LPSTR            lpTimeStr,
  [in]            int              cchTime
);

Параметры

[in] Locale

Идентификатор языкового стандарта, указывающий языковой стандарт. Макрос MAKELCID можно использовать для создания идентификатора языкового стандарта или одного из следующих предопределенных значений.

[in] dwFlags

Флаги, указывающие параметры формата времени. Подробные определения см. в параметре dwFlagsgetTimeFormatEx.

[in, optional] lpTime

Указатель на структуру SYSTEMTIME , содержащую сведения о времени для форматирования. Приложение может задать этому параметру значение NULL , если функция использует текущее локальное системное время.

[in, optional] lpFormat

Указатель на изображение формата, используемое для форматирования строки времени. Если приложение задает этому параметру значение NULL, функция форматирует строку в соответствии с форматом времени указанного языкового стандарта. Если приложение не задает для параметра значение NULL, функция использует языковой стандарт только для сведений, не указанных в строке рисунка формата, например меток времени, зависящих от языкового стандарта. Сведения о строке форматирования рисунка см. в разделе Примечания.

[out, optional] lpTimeStr

Указатель на буфер, в котором эта функция извлекает отформатированную строку времени.

[in] cchTime

Размер в значениях TCHAR для буфера строки времени, указанного lpTimeStr. Кроме того, приложение может задать для этого параметра значение 0. В этом случае функция возвращает необходимый размер для буфера строк времени и не использует параметр lpTimeStr .

Возвращаемое значение

Возвращает количество значений TCHAR, полученных в буфере, указанном lpTimeStr. Если параметр cchTime имеет значение 0, функция возвращает размер буфера, необходимый для хранения отформатируемой строки времени, включая завершающий символ NULL.

Эта функция возвращает значение 0, если она не выполняется успешно. Чтобы получить расширенные сведения об ошибке, приложение может вызвать Метод GetLastError, который может возвращать один из следующих кодов ошибок:

  • ERROR_INSUFFICIENT_BUFFER. Указанный размер буфера был недостаточно велик или для него неправильно задано значение NULL.
  • ERROR_INVALID_FLAGS. Значения, указанные для флагов, были недопустимыми.
  • ERROR_INVALID_PARAMETER. Любое из значений параметров было недопустимым.
  • ERROR_OUTOFMEMORY. Недостаточно места для выполнения этой операции.

Комментарии

См. примечания для GetTimeFormatEx.

Если версия ANSI этой функции используется с идентификатором языкового стандарта только в Юникоде, функция может быть успешной, так как операционная система использует системную кодовую страницу. Однако символы, неопределенные на системной кодовой странице, отображаются в строке как вопросительный знак (?).

Начиная с Windows 8: GetTimeFormat объявляется в файле Datetimeapi.h. До Windows 8 он был объявлен в Winnls.h.

Примечание

Заголовок datetimeapi.h определяет GetTimeFormat как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header datetimeapi.h
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

GetDateFormat

GetLocaleInfo

GetTimeFormatEx

Поддержка национальных языков

Функции поддержки национальных языков