На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

GetTimeFormat



The GetTimeFormat function formats a time as a time string for a specified locale. The function formats either a specified time or the local system time.

int GetTimeFormat(

LCID Locale, // locale for which time is to be formatted
DWORD dwFlags, // flags specifying function options
CONST SYSTEMTIME *lpTime, // time to be formatted
LPCTSTR lpFormat, // time format string
LPTSTR lpTimeStr, // buffer for storing formatted string
int cchTime // size, in bytes or characters, of the buffer
);


Parameters

Locale

Specifies the locale for which the time string is to be formatted. If lpFormat is NULL, the function formats the string according to the time format for this locale. If lpFormat is not NULL, the function uses the locale only for information not specified in the format picture string (for example, the locale's time markers).
This parameter can be a locale identifier created by the MAKELCID macro, or one of the following predefined values:

LOCALE_SYSTEM_DEFAULT Default system locale.
LOCALE_USER_DEFAULT Default user locale.


dwFlags

A set of bit flags that specify various function options. You can specify a combination of the following flags:

Flag Meaning
LOCALE_NOUSEROVERRIDE If set, the function formats the string using the system default time format for the specified locale. If not set, the function formats the string using any user overrides to the locale's default time format. This flag cannot be set if lpFormat is non-NULL.
TIME_NOMINUTESORSECONDS Do not use minutes or seconds.
TIME_NOSECONDS Do not use seconds.
TIME_NOTIMEMARKER Do not use a time marker.
TIME_FORCE24HOURFORMAT Always use a 24-hour time format.


lpTime

Pointer to a SYSTEMTIME structure that contains the time information to be formatted. If this pointer is NULL, the function uses the current local system time.

lpFormat

Pointer to a format picture to use to form the time string. If lpFormat is NULL, the function uses the time format of the specified locale.
Use the following elements to construct a format picture string. If you use spaces to separate the elements in the format string, these spaces will appear in the same location in the output string. The letters must be in uppercase or lowercase as shown (for example, "ss", not "SS"). Characters in the format string that are enclosed in single quotation marks will appear in the same location and unchanged in the output string.

Picture Meaning
h Hours with no leading zero for single-digit hours; 12-hour clock
hh Hours with leading zero for single-digit hours; 12-hour clock
H Hours with no leading zero for single-digit hours; 24-hour clock
HH Hours with leading zero for single-digit hours; 24-hour clock
m Minutes with no leading zero for single-digit minutes
mm Minutes with leading zero for single-digit minutes
s Seconds with no leading zero for single-digit seconds
ss Seconds with leading zero for single-digit seconds
t One character time marker string, such as A or P
tt Multicharacter time marker string, such as AM or PM


For example, to get the time string

"11:29:40 PM"

use the following picture string:

"hh':'mm':'ss tt"

lpTimeStr

Pointer to a buffer that receives the formatted time string.

cchTime

Specifies the size, in bytes (ANSI version) or characters (Unicode version), of the lpTimeStr buffer. If cchTime is zero, the function returns the number of bytes or characters required to hold the formatted time string, and the buffer pointed to by lpTimeStr is not used.



Return Values

If the function succeeds, the return value is the number of bytes (ANSI version) or characters (Unicode version) written to the buffer pointed to by lpTimeStr. If the cchTime parameter is zero, the return value is the number of bytes or characters required to hold the formatted time string.
If the function fails, the return value is zero. To get extended error information, call GetLastError. GetLastError may return one of the following error codes:

ERROR_INSUFFICIENT_BUFFER
ERROR_INVALID_FLAGS
ERROR_INVALID_PARAMETER


Remarks

If a time marker exists and the TIME_NOTIMEMARKER flag is not set, the function localizes the time marker based on the specified locale identifier. Examples of time markers are "AM" and "PM" for US English.
The time values in the SYSTEMTIME structure pointed to by lpTime must be valid. The function checks each of the time values to determine that it is within the appropriate range of values. If any of the time values are outside the correct range, the function fails, and sets the last-error to ERROR_INVALID_PARAMETER.

The function ignores the date portions of the SYSTEMTIME structure pointed to by lpTime: wYear, wMonth, wDayOfWeek, and wDay.
If TIME_NOMINUTESORSECONDS or TIME_NOSECONDS is specified, the function removes the separator(s) preceding the minutes and/or seconds element(s).
If TIME_NOTIMEMARKER is specified, the function removes the separator(s) preceding and following the time marker.
If TIME_FORCE24HOURFORMAT is specified, the function displays any existing time marker, unless the TIME_NOTIMEMARKER flag is also set.

The function does not include milliseconds as part of the formatted time string.
To use the LOCALE_NOUSEROVERRIDE flag, lpFormat must be NULL.
No errors are returned for a bad format string. The function simply forms the best time string that it can. If more than two hour, minute, second, or time marker format pictures are passed in, then the function defaults to two. For example, the only time marker pictures that are valid are L"t" and L"tt" (the 'L' indicates a Unicode (16-bit characters) string). If L"ttt" is passed in, the function assumes L"tt".

See Also

GetDateFormat, SYSTEMTIME


Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

GetTimeFormat



Функция GetTimeFormat форматирует время как строку времени для определенного места действия. Функция форматирует или определенное время или локальное системное время.

int GetTimeFormat(

МЕСТО действия LCID, // место действия для которых время должно быть отформатировано DWORD dwFlags, // флаги, определяющие функциональные опции CONST SYSTEMTIME *lpTime, // время, которое нужно форматировать LPCTSTR lpFormat, // строку формата времени LPTSTR lpTimeStr, // буфера для хранения отформатировавшего строку размера int cchTime //, в байтах или символах, буфера
);


Параметры

Место действия

Определяет место действия для которого строка времени должна быть отформатирована. Если lpFormat НЕДЕЙСТВИТЕЛЕН, функция форматирует строку согласно формату времени для этого места действия. Если lpFormat не НЕДЕЙСТВИТЕЛЕН, функция использует место действия только для информации не определенное в картинной строке формата (например, место действия времени маркеров).
Этот параметр может быть местом действия идентификатора созданным макро MAKELCID, или одна из следующих встроенных величин:

По умолчанию системное место действия LOCALE_SYSTEM_DEFAULT.
место действия пользователя Умолчания LOCALE_USER_DEFAULT.


dwFlags

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

Значение Флага
LOCALE_NOUSEROVERRIDE Если установлено, функция форматирует строку, использовавшую системный по умолчанию формат времени для определенного места действия. Если не установлено, функция форматирует строку, использовавшую любого пользователя аннулируется на место действия по умолчанию времени формата. Этот флаг не может быть установлен если lpFormat не-НЕДЕЙСТВИТЕЛЕН.
TIME_NOMINUTESORSECONDS не использует минуты или секунды.
TIME_NOSECONDS не использует секунды.
TIME_NOTIMEMARKER не использует маркер времени.
TIME_FORCE24HOURFORMAT Всегда использует 24- часовой формат времени.


lpTime

Указатель в структуру SYSTEMTIME, которая содержит информацию времени, которая нужно форматироваться. Если этот указатель НЕДЕЙСТВИТЕЛЕН, функция использует текущее локальное системное время.

lpFormat

Указатель на изображение формата, чтобы использоваться, чтобы формировать строку времени. Если lpFormat НЕДЕЙСТВИТЕЛЕН, функция использует формат времени определенного места действия.
Используйте следующие элементы, чтобы создавать картинную строку формата. Если Вы используете пробелы, чтобы разделять элементы в строке формата, эти пробелы появится в той же позиции в выходной строке. Письма должны быть в верхнем регистре или верхнем регистре как показано (например, "ss", не "SS"). Символы в формате нанизывают, что приложены в единственных кавычках появится в той же позиции и неизменной в выходной строке.

Картинное Значение
h Часы без ведущего нуля для единственных-цифровых часов; 12- часовые hh Часы часов с ведущим нулем для единственных-цифровых часов; 12- часовые Часы часов H без ведущего нуля для единственных-цифровых часов; 24- часовые Часы часов HH с ведущим нулем для единственных-цифровых часов; 24- часовые m Минуты часов без ведущего нуля для единственных-цифровых mm Минут минут с ведущим нулем для единственных-цифровых s Секунд минут без ведущего нуля в течение единственных-цифровых ss Секунд секунд с ведущим нулем в течение единственных-цифровых секунд t Один символьный маркер времени нанизывают, как например, A или P времени tt маркер строки Multicharacter, как например, - или ПОСЛЕ ПОЛУДНЯ


Например, чтобы получать строку времени

"11:29:40 ПОСЛЕ ПОЛУДНЯ"

используйте картинную строку следующего:

"hh':'mm':'ss tt"

lpTimeStr

Указатель в буфер, который получает форматированную строку времени.

cchTime

Определяет размер, в байтах (версия ANSI) или символы (версия Уникода), буфера lpTimeStr. Если cchTime - нуль, функция возвращает количество байтов или символов требовавшихся, чтобы держать форматированную строку времени, и буфер указывался, чтобы lpTimeStr не использован.



Обратные Величины

Если функция добивается успеха, обратная величина - количество байтов (версия ANSI) или символы (версия Уникода) записанного в буфер указанный, чтобы lpTimeStr. Если параметр cchTime является нулем, обратная величина - количество байтов или символов требовавшихся, чтобы держать форматированную строку времени.
Если функция терпит неудачу, обратная величина нулевая. Для того, чтобы расширять информацию ошибки, назовите GetLastError. GetLastError МОЖЕТ возвращать один из следующих кодов ошибки:

ERROR_INSUFFICIENT_BUFFER ERROR_INVALID_FLAGS ERROR_INVALID_PARAMETER


Замечания

Если маркер времени существует и флаг TIME_NOTIMEMARKER не установлен, функция локализует маркер времени основанный на определенном месте действия идентификатора. Примеры маркеров времени - "-" и "ПОСЛЕ ПОЛУДНЯ" для Английского US.
Время оценивается в структуре SYSTEMTIME указанной, чтобы lpTime должно быть в силе. Функция проверяется всякий раз, когда величины, чтобы определять, что это - в пределах подходящего дипазона величин. Если любая из величин времени - за пределами правильного дипазона, функция терпит неудачу, и устанавливает последнюю-ошибку на ERROR_INVALID_PARAMETER.

Функция игнорирует дату частей структуры SYSTEMTIME указанной, чтобы lpTime: wYear, wMonth, wDayOfWeek, и wDay.
Если TIME_NOMINUTESORSECONDS или TIME_NOSECONDS определен, функция удаляет разделитель(разделители) предшествуя протоколу и/или элементу секунд(секунд).
Если TIME_NOTIMEMARKER определен, функция удаляет разделитель(разделители) предшествуя и следуя за маркером времени.
Если TIME_FORCE24HOURFORMAT определен, функция отображает любой существующий маркер времени, если флаг TIME_NOTIMEMARKER не - также устанавливаться.

Функция не включает миллисекунды как часть форматированной строки времени.
Для того, чтобы использовать флаг LOCALE_NOUSEROVERRIDE, lpFormat должен быть НЕДЕЙСТВИТЕЛЕН.
Никакие ошибки не возвращаны для плохой строки формата. Функция просто формирует наилучшую строку времени, которая она может. Если более, чем два часа, минуты, секунды, или изображений формата маркера времени пройдены в, тогда функция устанавливается по умолчанию на два. Например, единственный маркер времени изображает, что быть в силе - L"t" и L"tt" ( 'L указывает Уникод (16- битовые символы) строка). Если L"ttt" пройден в, функция принимает L"tt".

Смотри Также

GetDateFormat, SYSTEMTIME


Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz