Ïðåîáðàçîâàíèå äàòû â ñòðîêó è îáðàòíî

Òåïåðü ïîçíàêîìèìñÿ ñ ïðåîáðàçîâàíèåì äàòû. Äëÿ ýòîãî åñòü íåñêîëüêî ôóíêöèé:

1. 1. DateToStr – ïðåîáðàçîâûâàåò äàòó â ñòðîêó. Åäèíñòâåííûé ïàðàìåòð, êîòîðûé íàäî óêàçàòü – ïåðåìåííóþ òèïà TDateTime è íà âûõîäå ïîëó÷èì ñòðîêó.

2. 2. StrToDate – ïðåîáðàçîâàíèå ñòðîêè â äàòó. Óêàçûâàåøü ñòðîêó (íàïðèìåð «11/05/2001»)è ïîëó÷àåøü äàòó.

3. 3. FormatDateTime – ôîðìàòèðîâàíèå äàòû è âðåìåíè. Ýòî î÷åíü èíòåðåñíàÿ ôóíêöèÿ, ïîýòîìó íà íåé ÿ îñòàíîâëþñü ïîäðîáíåå.

 

Ó ôóíêöèè FormatDateTime äâà ïàðàìåòðà:

1. 1. Ôîðìàò ñòðîêè â êîòîðóþ íàäî ïåðåãíàòü äàòó

2. 2. Ïåðåìåííàÿ òèïà TdateTime, êîòîðóþ íàäî ïðåîáðàçîâàòü.

 

Ñàìîå èíòåðåñíîå çäåñü – ýòî ôîðìàò ñòðîêè. Îí ìîæåò ñîäåðæàòü ñëåäóþùèå ñèìâîëû:

d – ïîêàçàòü äàòó íå ïîäñòàâëÿÿ íóëè â íà÷àëå (1, 2, 3 …30, 31).
dd – ïîêàçàòü äàòó ïîäñòàâëÿÿ åñëè íóæíî â íà÷àëå íîëü.  ýòîì ñëó÷àå, åñëè äàòà

 

ìåíüøå 10, òî îíà áóäåò îòðàæàòüñÿ êàê 01, 02 … 09. ddd – ïîêàçàòü äåíü íåäåëè èñïîëüçóÿ êîðîòêèé ôîðìàò (Ïí, Âò, Ñð…). dddd – ïîêàçàòü äåíü íåäåëè ñ ïîëíûì íàçâàíèåì (Ïîíåäåëüíèê, Âòîðíèê …) ddddd – ïîêàçàòü äàòó èñïîëüçóÿ êîðîòêèé ôîðìàò. dddddd – ïîêàçàòü äàòó èñïîëüçóÿ ïîëíûé ôîðìàò (Íàïðèìåð 10 äàòà /02/2002 áóäåò

ïåðåâåäåíà â «10 ôåâðàëÿ 2002». m – ïîêàçàòü ìåñÿö áåç äîáàâëåíèÿ íóëåé (1, 2, …, 11, 12). mm – ïîêàçàòü ìåñÿö ñ äîáàâëåíèåì íóëåé (01, 02, …11, 12). mmm – ïîêàçàòü êîðîòêîå íàçâàíèå ìåñÿöà. mmmm – ïîêàçàòü ïîëíîå íàçâàíèå ìåñÿöà (ÿíâàðü, ôåâðàëü.…). yy – ïîêàçàòü êîðîòêèé ãîäà (98, 99, 00, 01).

yyyy – ïîêàçàòü ïîëíûé ãîä.

h – ïîêàçàòü ÷àñû íå äîáàâëÿÿ â íà÷àëå íóëåé.

hh – ïîêàçàòü ÷àñû ñ äîáàâëåíèåì â íà÷àëå íóëåé.

n – ïîêàçàòü ìèíóòû íå äîáàâëÿÿ â íà÷àëå íóëåé.

nn – ïîêàçàòü ìèíóòû ñ äîáàâëåíèåì â íà÷àëå íóëåé.

s – ïîêàçàòü ñåêóíäû íå äîáàâëÿÿ â íà÷àëå íóëåé.

ss – ïîêàçàòü ñåêóíäû ñ äîáàâëåíèåì â íà÷àëå íóëåé.

z – ïîêàçàòü ìèëëèñåêóíäû íå äîáàâëÿÿ â íà÷àëå íóëåé.

zz – ïîêàçàòü ìèëëèñåêóíäû ñ äîáàâëåíèåì â íà÷àëå íóëåé.

am/pm – èñïîëüçîâàòü 12-è ÷àñîâîå ïðåäñòàâëåíèå (äî ïîëóäíÿ/ïîñëå ïîëóäíÿ).

Ýòî ïðàêòè÷åñêè ïîëíûé îáçîð âîçìîæíîñòåé, à òåïåðü ïîñìîòðèì ïàðó ïðèìåðîâ:

FormatDateTime(‘dd/mm/yyy’, Date()); // Äàòà áóäåò â âèäå “24/02/2002”
FormatDateTime(‘dddddd’, Date()); // Äàòà áóäåò â âèäå “24 ôåâðàëÿ 2002”
FormatDateTime(‘hh:nn’, Time()); // Âðåìÿ áóäåò â âèäå “10:48”
FormatDateTime(‘hh:nn - ss’, Time()); // Âðåìÿ áóäåò â âèäå “10:48 - 24”