Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ВУМИП 2012-07-06.doc
Скачиваний:
74
Добавлен:
13.05.2015
Размер:
9.35 Mб
Скачать

1.7.2.2. Функция форматированияFormat

Format(Const SFormat:String;Const Args:Array Of Const):Stringвозвра­ща­ет отформатированную строку после применения строки формати­ро­ва­нияSFormatк элементам открытого массиваArgs.

Пример: label1.caption:=

Format('%sТаб.N%d, возраст %f, оклад %m.',['Иванов',19,22.5,1000.1]);

Сформируется строка: Иванов Таб.N19, возраст 22.5, оклад 1 000.10р.

1.7.3. Преобразование дат и времени

GetTickCount ‑ возвращает число тиков (1 равна 1000 тикам), прошедших сначала запускаWindows(п. 2.3.7.6).

Date:TdateTime- возвращает текущую дату.

DateTimeToStr(DateTime:TdateTime): String- преобразует дату и время в строку.

DateTimeToString(Var Result:String;Const Format: String; DateTime: TDateTime) - преобразует дату и время DateTimeв строкуResult, исполь­зуя строку форматированияFormatcтипами:

с‑ формат дд.мм.гг чч.мм.сс;

m,d,h,n,s или mm,dd,hh,nn,ss‑ номер месяца, дня, часа, минуты, секунды без ведущего нуля или с ведущим нулем соответственно;

dddd‑ наименования дня недели;

ddddd‑ дд.мм.гг;dddddd‑ дд <наименование месяца> гггг;

mmmилиmmmm‑ сокращенное или полное название месяца;

yyилиyyyy‑ две последние или все цифры года;

tилиtt‑ время в формате чч:мм или чч:мм:сс;

am/pm‑ время в 12‑часовом формате с указанием до/после полудня;

ampm‑ время в 12‑часовом формате без указания до/после полудня;

a/p‑ время в 12‑часовом формате с указанием до/после полудня (a/p);

/,:‑ разделители даты и времени.

DateToStr(Date:TDateTime): String- преобразует дату и время в строку с кратким форматом даты.

DayOfWeek(Date:TDateTime): Integer- возвращает текущий день недели (1 ‑ вос­кресенье, 7 ‑ суббота).

DecodeDate (Date:TDateTime;Var Year, Month, Day:Word) - разбивает дату Date на год Year, месяц Month и день Day.

DecodeTime(Time:TDateTime;Var Hour,Min,Sec,Msec:Word) - разбивает вре­мя Time на часы Hour, минуты Min, секунды Sec и миллисекунды Msec.

EncodeDate(Year,Month,Day:Word):TDateTime - объединяет год Year, ме­сяц Month и день Day в значение типа TDateTime.

EncodeTime(Hour,Min,Sec,MSec:Word):TDateTime - объединяет час Hour, минуту Min, секунду Sec и миллисекунду MSec в значение типа TDateTime

FormatDateTimeToString(Const Format: String; DateTime:TDateTime): String - возвращает строку после преобразования DateTime с помощью строки форматирования Format.

Пример:

label1.caption:=FormatDateTime('«Время встречи « dddd, mmmm d, yyyy ' +

'«в» hh:mm', StrToDateTime('2.07.00 14:30'));

Выведется текст: Время встречи воскресенье, Июль 2,2000 в 14:00

Now:TDateTime‑ возвращает текущую дату и время.

StrToDate/StrToDateTime/StrToTime (Const S:String):TDateTime‑ преобра­зует строку в формат даты/даты и времени/времени.

Time:TDateTime‑ возвращает текущее время.

TimeToStr(Time:TDateTime):String‑ возвращает строку со временем в полной форме.

1.7.4. Обработка строк с нулевым символом в конце

Функции, имена которых начинаются сAnsi, учитывают символы ки­рил­лицы в верхнем и нижнем регистрах.

AnsiStrIComp(S1,S2):Integer‑ сравнение строк без учета регистров. Воз­вра­щает­ся число: 0, еслиS1=S2,<0, еслиS1<S2, >0, еслиS1>S2.

AnsiStrLIComp(S1,S2;N:Cardinal):Integer‑ аналогична предыдущей функции, но сравниваются первыеNсимволов.

AnsiStrLower(S):PChar‑ возвращает символы в нижнем регистре.

AnsiStrUpper(S):PChar‑ возвращает символы в верхнем регистре.

StrAlloc(Size:Cardinal):PChar‑ выделяет память для строки длинойSize.

StrBufSize(S):Cardinal‑ возвращает размер строки, размещенной функ­ция­миStrAllocилиStrNew.

StrCat(S1,S2):PChar‑ объединяет две строки.

StrComp(S1,S2):Integer‑ сравнение строкcучетом регистров. Возвра­щает­ся число: 0, еслиS1=S2,<0, еслиS1<S2, >0, еслиS1>S2.

StrCopy(S1,S2):PChar‑ копируетS2 вS1 и возвращаетS1.

StrDispose(S)‑ удаляет из памяти, динамически размещенную строкуS.

StrECopy(S1,S2):PChar‑ копируетS2 вS1 и возвращает указатель на конец строкиS1 (нулевой байт).

StrEnd(S):PChar- возвращает указатель на конец строкиS.

StrFmt(S,Format;Const Args:Array Of Const):PChar‑ объединяет в одну строкуSстроки массиваArgsс помощью строки форматированияFormatи возвращает указатель на строкуS.

StringToWideChar(Const S:String;D:PWideChar;N:Integer):PWideChar‑ преобразует первыеNAnsi‑ символов строкиSв строкуDcсимволами Unicode и возвращает указатель на строкуD.

StrLCat(S1,S2;N:Cardinal):PCharдобавляет первыеNсимволов строкиS2 в конец строкиS1 и возвращаетS1.

StrLCopy(S1,S2;N:Cardinal):PChar‑ копирует первыеNсимволов строкиS2 вS1 и возвращаетS1.

StrLen(S):Cardinal‑ возвращает длину строки без учета нулевого символа.

StrLFmt(S;N:Cardinal;Format; Const Args:Array Of Const):PCharобъединяет в первыеNсимволы строкиSстроки массиваArgsс помощью строки форматированияFormatи возвращает указатель на строкуS.

StrMove(S1,S2;N:Cardinal):PChar‑ копирует первыеNсимволов строкиS2 вS1 и возвращаетS1.S1 иS2 могут перекрывать друг друга в памяти.

StrNew(S):PChar‑ выделяет место, копирует символы строкиSи возвра­щает адрес на новую строку.

StrPCopy(S1:PChar;Const S2:String):PChar‑ копирует строкуS2 в стиле ПаскальS2 вS1 и возвращаетS1. РазмерS1 должен > размераS2.

StrPLCopy(S1:PChar;Const S2:String;N:Cardinal):PChar‑ копирует пер­выеNсимволов строкиS2 в стиле ПаскальS2 вS1 и возвращаетS1. Раз­мерS1 должен > размераS2.

StrPos(S1,S2):PChar‑ возвращает указатель на первое вхождениеS2 вS1. При отсутствииS2 вS1, возвращаетсяnil.

StrRScan(S,C:Char):PChar‑ возвращает указатель на последнее вхождение символа С вS. При отсутствии С вS, возвращаетсяnil.

StrScan(S,C:Char):PChar‑ возвращает указатель на первое вхождение сим­вола С вS. При отсутствии С вS, возвращаетсяnil.

WideCharLenToString(S:PWideChar;N:Integer):String-преобразует первыеNсимволов строкиUnicodeSв строкуANSI.

WideCharToString(S:PWideChar):String-преобразует строку Unicode S в строку ANSI.