четверг, 15 декабря 2011 г.

DateTime. Методы. Часть 2


Продолжаю рассказ о методах класса DateTime. Еще осталось не очень много методов, не знаю, на сколько они потянут, поэтому (в начале написания статьи) скажу, что примерно еще будет опубликовано две статьи по этой теме. Возможно, если получится – то все попробую засунуть в одну (данную) статью.

Осталось рассмотреть следующие методы:

Add
Модификации Add
Subtract

Add:

Как не трудно догадаться из названия данного метода – он производит добавление одного значения к другому. В данном случае – производится добавление к значению DateTime значения временного промежутка (то есть – типа TimeSpan). В примере ниже я объявляю такой промежуток и прибавляю его к существующей дате и времени. Про работу с типом TimeSpan я расскажу подробнее в следующих статьях:

Dim dd As DateTime
dd = #11/11/2011 11:11:11 AM# '11.11.2011 11:11:11
MsgBox(dd.ToString)
Dim ts As TimeSpan
ts = New TimeSpan(1, 2, 3, 4)
MsgBox((dd.Add(ts)).ToString) '12.11.2011 13:14:15

В данном примере я к значению 11.11.2011 11 часов 11 минут 11 секунд добавляю промежуток в один день, два часа, три минуты и четыре секунды (ts = New TimeSpan(1, 2, 3, 4)) и вывожу полученное значение на экран.

Модификации Add:

Решил выделить в отдельный пункт методы-модификации метода Add. В Add можно добавлять различные временные промежутки. Но иногда – четко понимаешь, что будешь добавлять, например, два месяца. И для таких случаем и существуют следующие модификации метода Add:

AddYears
AddMonths
AddDays
AddHours
AddMinutes
AddSeconds
AddMilliseconds
AddTicks

Все эти методы либо добавляют соответствующий промежуток (промежуток лет, дней секунд и тд) если передается положительное число, либо – вычитается (если передается отрицательное число):

Dim dd As DateTime
dd = #11/11/2011 11:11:11 AM# '11.11.2011 11:11:11
MsgBox(dd.ToString)
Dim dd2 As DateTime
dd2 = dd.AddYears(4)
dd2 = dd2.AddMinutes(9)
dd2 = dd2.AddSeconds(48)
MsgBox(dd2.ToString) '11.11.2015 11:20:59

В примере выше я добавляю к начальному значению DateTime четыре года, девять минут и сорок восемь секунд. В результате и получаю то значение, которое выводится на экран.

AddTicks – добавляет тики (такты) ко времени. Нужно это для точной работы с временем. Один тик равен 100 наносекундам (0,0001 миллисекунды). Наверно такие точные значения используются в физике. Но я пока такое никогда не использовал в своей работе.

Subtract:

Данный метод прямо противоположен методы Add – он вычитает из переменной типа DateTime временной промежуток типа TimeSpan. То есть – суть та же самая, только направление другое:

Dim dd As DateTime
dd = #11/11/2011 11:11:11 AM# '11.11.2011 11:11:11
MsgBox(dd.ToString)
Dim ts As New TimeSpan(4, 3, 2, 1)
MsgBox(dd.Subtract(ts)) '07.11.2011 08:09:10

В примере я вычитаю из переменной типа DateTime значение промежутка в четыре дня, три часа, две минуты и одну секунду.

Сегодня решил рассмотреть, скажем так, три метода. Планирую уже в следующей статье по VB.NET рассмотреть все остальные методы (описание тоже получиться большим, так как методов еще осталось много). Но — если вы не ограничиваетесь VB.NET — и занимаетесь большим бизнесом и развозите различные товары по всему миру (или одной стране) — то советую прочитать про таможенные услуги, оказываемые фирмой Альгия. Они предоставляют как наземную, так и морскую перевозки. В общем — лучше зайдите на их сайт и все сами увидите.

Комментариев нет:

Отправить комментарий