
9/ Форматування дати і часу
Як вже зазначалося раніше, найчастіше проводиться робота тільки з датою або тільки з часом, розташованим у змінній з типом даних Date. Крім того, як правило, виникає бажання контролювати формат відображення дати і часу. Все це досягається за допомогою функції Format(). За допомогою функції Format() можна досягти різноманітного форматування дат і часу. Немає можливості показати всі можливості застосування функції Format(), проте будуть продемонстровані можливості виведення частини дати або часу за допомогою цієї функції. Функція Format() має наступний синтаксис:
Format(expression, style)
Параметр expression є форматованим виразом, a style - рядковим значенням, що містить інформацію про тип форматування. Наприклад, для відображення інформації про місяць дати в style використовується літера М. Якщо встановити одну букву М, то місяць відобразиться у вигляді однієї цифри для місяців з 1 по 9, або двох цифр - з 10 по 12. Якщо встановити дві букви М, то номер місяць завжди відображується у вигляді двох цифр. Три букви М призводять до відображення трибуквеної абревіатури місяці, а чотири - до відображення повної назви місяця не залежно від довжини слова. (Зауважимо, що маленька літера m використовується для повернення хвилин). Представлені приклади ілюструють викладене:
Format(#1/22/2002#, "M.") ' повертає 1
Format(#1/22/2002#, "MM") ' повертає 01
Format(#1/22/2002#, "MMM") ' повертає Січ
Format(#1/22/2002#, "MMMM") ' повертає Січень
Існує велика кількість форматів для представлення років, днів, годин, хвилин і навіть AM і PM. Список допустимих форматів просто гігантський, тому для більш детального ознайомлення рекомендуємо звернутися до довідки в Visual Basic .NET.
Format(#7/22/2001#, "MMM. d, yyyy") ' повертає: Лип. 22, 2001
Format(#7/22/2001#, "MMMM, yyyy") ' повертає: Липень, 2001
Format(#9:37:00 PM#, "h:mm") ' повертає: 9:37
Format(#5/14/1998 9:37:00 PM#, "MM.dd.yyyy hh:mm"))' повертає: 05.14.1998 09:37
Format(#1/27/2001 5:04:23 PM#, "HH:mm:ss")) ' повертає: 17:04:23
Як видно з прикладів, кома, двокрапка і крапка з'являються в форматованому рядку в тому місці, де вони перебували в style.
Ще деякі методи та властивості
Нехай ми задамо змінну:
Dim D As DateTime = #2/14/2005 11:41:39 PM#
Її значення ми використовуватимемо в цьому пункті, як початковий матеріал.
Оператор
MsgBox(D.Date)
Надруковане значення
14.02.2005 0:00:00
Ми бачимо, що властивість Date повертає значення змінної з обнуленою складовою часу доби, залишивши тільки дату. Тип значення - Date.
Декілька властивостей повертають ту або іншу складову структури DateTime:
Наступні методи перетворять значення з типу DateTime в тип String. Після цього його зручно проглядати і до нього можна застосовувати методи роботи з рядками.
Наступні методи і властивості належать структурі DateTime і для їх використання не потрібно створювати змінну типу DateTime. Тобто, можна писати, наприклад, просто
MsgBox(DateTime.Now)
Наступні дві функції перетворять рядок в тип Date:
Наступні дві властивості видають поточну дату і час у вигляді рядка: