c datetime tutorial
Овај водич ће објаснити све о класи Ц # ДатеТиме. Научићете да радите са форматом Ц # ДатеТиме, укључујући тајмер, штоперицу и методе спавања:
Време и датум се широко користе у неколико софтверских пројеката. Често се бавимо објектима датума и времена док пишемо различите програме.
Дате тиме има разне апликације попут добивања тренутног датума и времена, додавања временске ознаке именима променљивих / датотека, употреби датумског времена за валидацију итд. Са толико много апликација можете лако погодити колико је важан датумски-временски објекат за програмера.
=> Овде погледајте продубљене водиче за обуку за Ц #
Шта ћете научити:
- Како иницијализовати објект Ц # ДатеТиме?
- Својства објекта ДатеТиме
- Шта је форматирање датума?
- Како доћи до тренутног датума?
- Ц # Тајмер
- Ц # Штоперица
- Шта је метода спавања?
- Закључак
- Препоручено читање
Како иницијализовати објект Ц # ДатеТиме?
ДатеТиме је структура у системском простору имена. Помаже програмерима да добију информације о системском датуму, времену, месецу, години или чак дану у недељи. Такође омогућава корисницима да извршавају операције на преузетим вредностима датума и времена.
Погледајмо једноставан програм иницијализацијом новог ДатеТиме објекта. Када иницијализујемо нови објекат мораћемо да проследимо одређене параметре да бисмо поставили вредност датума.
namespace ConsoleApp1 { class Program { static void Main(string() args) { // year, month, date DateTime dt = new DateTime(2018, 11, 05); Console.WriteLine(dt.ToString()); Console.ReadLine(); } } }
Овде смо пренели датум као 05, месец као 11. и годину као 2018. Ово ће поставити временску инстанцу података на параметар који смо обезбедили. Након иницијализације, одштампали смо иницијализовани објекат на конзоли претварајући га у низ.
Резултат горе наведеног програма биће:
5.11.2018 00:00:00
У горњем излазу можете видети да, пошто нисмо навели никакву временску вредност, стога је објекат ДатеТиме користио подразумевано време.
Својства објекта ДатеТиме
Објект ДатеТиме нуди низ различитих својстава која помажу корисницима да преузму податке о објекту датума и времена.
Овде ћемо разговарати о неколико важних својстава датума и времена:
Дан
Својство даи преузима постављени датум објекта датум-време. Враћа целу вредност и не прихвата ниједан аргумент.
Синтакса:
int date = dt.Day;
Месец дана
Својство Монтх преузима постављени месец објекта датум-време. Враћа целу вредност и не прихвата ниједан аргумент.
Синтакса:
int month = dt.Month;
Године
Својство Иеар преузима постављену годину објекта датум-време. Враћа целу вредност и не прихвата ниједан аргумент.
Синтакса:
int yr = dt.Year;
Дан у недељи
Својство Дан у седмици преузима целобројну вредност дана у недељи из постављеног објекта датум-време. Такође је потребно да се прихвати целобројна вредност. Не прихвата ниједан аргумент.
Синтакса:
int dayWeek = (int)dt.DayOfWeek;
Дан у години
Својство Дан у години преузима дан у години из постављене вредности датума у објекту датум-време. Враћа целу вредност и не прихвата ниједан аргумент.
Синтакса:
int dayYear = dt.DayOfYear;
Сат
Својство даи преузима постављени датум објекта датум-време. Враћа целу вредност и не прихвата ниједан аргумент.
Синтакса:
int hour = dt.Hour;
Минута
Својство Мин преузима минутну вредност од постављеног датума објекта датум-време. Враћа целу вредност и не прихвата ниједан аргумент.
Синтакса:
int min = dt.Minute;
Друго
Друго својство преузима другу вредност из постављене вредности објекта датум-време. Враћа целу вредност и не прихвата ниједан аргумент.
Синтакса:
int sec = dt.Second;
Погледајмо једноставан програм за преузимање ових вредности.
namespace ConsoleApp1 { class Program { static void Main(string() args) { // year, month, date DateTime dt = new DateTime(2018, 11, 05); int date = dt.Day; int month = dt.Month; int yr = dt.Year; int dayWeek = (int)dt.DayOfWeek; int dayYear = dt.DayOfYear; int hour = dt.Hour; int min = dt.Minute; int sec = dt.Second; Console.WriteLine(date); Console.WriteLine(month); Console.WriteLine(yr); Console.WriteLine(dayWeek); Console.WriteLine(dayYear); Console.WriteLine(hour); Console.WriteLine(min); Console.WriteLine(sec); Console.ReadLine(); } } }
Резултат горе наведеног програма биће:
Датум: 5
Месец: 11
Година: 2018
Дан у недељи: 1
Дан у години: 309
Сат: 0
Минута: 0
Друго: 0
У горенаведеном програму поставили смо вредност датума као 11.05.2018. Дакле, можемо видети да је систем дохватио исте вредности, али када погледамо временски део видећемо да је подразумевана вредност 0. То је зато што нисмо поставили ниједну временску вредност и самим тим систем је аутоматски доделио подразумеване вредности на сат, минут и секунду.
Шта је форматирање датума?
Различите апликације и различити програмери могу захтевати другачији формат датума за своју употребу. Дакле, форматирање датума се користи за обликовање датума за бројне захтеве. ДатеТиме такође нуди различите могућности форматирања да бисте датум добили у жељеном формату.
Постоје различити спецификатори који ће вам понудити жељени формат датума. Овде ћемо разговарати о неколико популарних:
Формат кратког времена
Приказује једноставан временски формат са сатом и минутама са суфиксом АМ или ПМ. Означава се са „т“ у малом случају.
софтвер за преузимање видео снимака са ИоуТубе-а
Излазни формат биће: 12:00 ПМ
Дуготрајни формат
Приказује формат продуженог времена са сатом, минутом и секундом са суфиксом АМ или ПМ. Означава се са „Т“ великим словом.
Излазни формат биће: 12:13:12 ПМ
Кратак датум
Приказује једноставан формат датума у формату ММ / ДД / ГГГГ. Означава се абецедом „д“ у малом случају.
Излазни формат биће: 05.11.2018
Лонг Дате
Приказује формат проширеног датума са даном, месецом, даном и годином. Означава се словом „Д“ великим словима.
Излазни формат биће: понедељак, 05. новембар 2018
Дан / Месец
Приказује формат датума са датумом и месецом. Не садржи детаље о години. Означава се словом „М“ великим словом.
Излазни формат биће: 5. новембар
Месец година
Приказује формат датума са месецом и годином. Не садржи детаље о датуму. Означава се словом „И“ великим словом.
Излазни формат биће: новембар 2018
Погледајмо их детаљно уз помоћ једноставног програма.
namespace ConsoleApp1 { class Program { static void Main(string() args) { // year, month, date DateTime dt = new DateTime(2018, 11, 05); //short time Console.WriteLine('Short time : {0}',dt.ToString('t')); //Long Time Console.WriteLine('Long time : {0}', dt.ToString('T')); //Short Date Console.WriteLine('Short Date : {0}', dt.ToString('d')); //Long Date Console.WriteLine('Long date : {0}', dt.ToString('D')); //Day / Month Console.WriteLine('Day with month : {0}', dt.ToString('M')); //Month / Year Console.WriteLine('Month with year : {0}', dt.ToString('Y')); Console.ReadLine(); } } }
Резултат горе наведеног програма биће:
Кратко време: 00:00
Дуго време: 00:00:00 АМ
Кратак датум: 5.11.2018
Дуги датум: понедељак, 5. новембар 2018
Дан са месецом: 5. новембар
Месец са годином: новембар 2018
У горњем програму иницијализовали смо вредност датума у првом реду, а затим смо покушали да користимо исту вредност за добијање различитих формата.
Како доћи до тренутног датума?
Објект ДатеТиме садржи низ различитих метода за приступ системском времену. Метода „Сада“ вам омогућава да добијете тренутно системско време / датум, чак вам омогућава и да њиме управљате.
Синтакса за добијање тренутног времена биће:
DateTime today = DateTime.Now;
Једном када смо дефинисали и ускладиштили објект ДатеТиме. Лако га можемо претворити у низ да бисмо добили тренутни датум-време или чак можемо променити формат датума помоћу горе описаних спецификатора.
Ц # Тајмер
Тајмер у Ц # омогућава програмерима да поставе временски интервал за понављање одређеног скупа кода или инструкција. Веома је корисно у случају да спецификација ваше апликације захтева да извршите догађај након сваког одређеног интервала.
На пример, током примене апликације за резервне копије података.
Погледајмо једноставан програм за примену тајмера:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; using System.Collections; using System.Timers; namespace ConsoleApp1 { class Program { private static Timer timer; static void Main(string() args) { timer = new System.Timers.Timer(); timer.Interval = 2000; timer.Elapsed += OnTimerEvent; timer.AutoReset = true; timer.Enabled = true; Console.WriteLine('The timer will start logging now... '); Console.ReadLine(); } private static void OnTimerEvent(Object source, System.Timers.ElapsedEventArgs e) { Console.WriteLine('Time logged: {0}', e.SignalTime.ToString('T')); } } }
Дакле, ако покренете овај програм, он ће наставити да бележи време након сваке 2 секунде.
У горњем програму прво смо покренули Систем.Тимер. Затим подесимо интервал времена за тајмер. Овде смо задржали интервал од 2000 милисекунди, можете пружити било коју имплементацију према вашим захтевима. Једном када је временски интервал протекао, потребно је покренути неке инструкције позивањем неке методе.
Овде смо позивали „ОнТимерЕвент“ сваке две секунде. Метода ће прихватити два параметра, први је „објект“, а други „ЕлапседЕвентАргс“.
Такође морамо ресетовати тајмер сваки пут када достигне интервал, а такође га морамо омогућити. Стога су и аутоматско ресетовање и омогућавање тајмера означени као тачни. Затим напишемо своју прилагођену поруку на конзолу и такође додамо линију за читање како бисмо били сигурни да конзола остаје отворена до интервенције корисника.
Ц # Штоперица
Штоперица се користи у Ц # за мерење времена. Веома је користан у бенчмаркингу перформанси кода током оптимизације кода. Може се користити за континуирано праћење перформанси кода / апликације и за контролу било каквог смањења перформанси.
Штоперица може тачно мерити време протекло током догађаја и савршен је избор за мерење времена било ког догађаја у програму. Класа штоперице је дефинисана у простору имена Систем.Диагностицс и мора бити инстанцирана за употребу. То га чини прилично корисним за апликације које захтевају више навоја. Позиви догађаја могу се извршити помоћу методе тхреад.слееп.
Шта је метода спавања?
Метода мировања се користи за паузирање покренуте нити за одређени временски распон. Прихвата време у милисекундама. Спавање је врло корисно у окружењу са више навоја где желите да се једна нит заустави како би се направило место за друге нити да доврше своје извршавање.
Синтакса методе спавања Ц # је:
System.Threading.Thread.Sleep(1000);
Сада смо научили о спавању и осталим часовима штоперице.
Направимо једноставан програм штоперице да бисмо јасније разумели ствари.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Threading; using System.Diagnostics; namespace ConsoleApp1 { class Program { static void Main(string() args) { Console.WriteLine('Press Enter to start the stopwatch'); Console.ReadLine(); // Create a new Stopwatch. var stopwatch = Stopwatch.StartNew(); Console.WriteLine('Stopwatch started...'); Console.WriteLine('Press Enter to stop the stopwatch and show time'); Console.ReadLine(); // Write result. Console.WriteLine('Time elapsed: {0}', stopwatch.Elapsed); Console.ReadLine(); } } }
Оутпут
Резултат горе наведеног програма биће отприлике овако:
Последњи ред приказује време протекло између почетка и заустављања штоперице.
У горњем програму смо дефинисали променљиву штоперицу у којој смо ускладиштили инстанцу класе Штоперица. Користили смо методу СтартНев (). Метода стартнев ствара нову инстанцу сваки пут када се позове, па је стога врло корисна када штоперицу желимо покренути од почетка.
Својство Елапсед штоперице омогућава кориснику да сними временски распон трчања. На крају смо једноставно исписали протекло време на конзолу.
Закључак
Датум, тајмер, стање мировања и штоперица се користе у програмском језику Ц # за задовољавање различитих намена. Објект ДатеТиме користи се за прикупљање информација о датуму и времену система или за постављање прилагођеног датума и времена за употребу за одређени захтев апликације.
Тајмер се, пак, користи за постављање временског интервала између извршавања одређених команди или догађаја.
Спавање је део Систем.Тхреадинга и користи се за паузирање или заустављање извршавања за одређени временски интервал. То омогућава програмерима да покрену другу нит у окружењу са више нити док је претходна нит паузирана.
Штоперица се може користити за мерење перформанси или времена утрошеног на извршење одређеног догађаја. Може да понуди прецизно мерење протеклог времена или крпеље које се могу користити за одржавање перформанси апликације под контролом.
=> Овде истражите целу серију водича за обуку за Ц #
Препоручено читање
- Водич за Питхон ДатеТиме са примерима
- Прилика за хонорарно хонорарно ангажовање стручњака за селен
- Водич за Јава рефлексију са примерима
- 10 најбољих софтвера за слободно време за праћење времена запослених
- Извршавање тест случајева помоћу АЛМ / КЦ (Водич за микро фокус фокуса за АЛМ 5. дан)
- Спремиште објеката у КТП-у - Туториал # 22
- Функције датума и времена у Ц ++ са примерима
- Објављен ТимеСхифтКс ради поједностављења тестирања померања времена