c datetime tutorial
Този урок ще обясни всичко за класа C # DateTime. Ще се научите да работите с формат C # DateTime, включващ таймер, хронометър и методи за заспиване:
Часът и датата се използват широко в няколко софтуерни проекта. Често се занимаваме с обекти с дата и час, докато пишем различни програми.
Date time има различни приложения като получаване на текуща дата-час, добавяне на клеймо за време към имена на променливи / файлове, използване на час за валидиране и т.н. С толкова много приложения можете лесно да познаете колко е важен обектът date-time за програмистите.
=> Вижте тук уроците за задълбочено обучение за C #
Какво ще научите:
- Как да инициализирам обекта C # DateTime?
- Свойства на обекта DateTime
- Какво е форматиране на дата?
- Как да получа текущата дата на часа?
- Таймер C #
- C # Хронометър
- Какво е методът на съня?
- Заключение
- Препоръчително четене
Как да инициализирам обекта C # DateTime?
DateTime е структура в системното пространство от имена. Той помага на програмистите да извличат информация за системна дата, час, месец, година или дори ден от седмицата. Той също така позволява на потребителите да извършват операции върху извлечените стойности за дата и час.
Нека да разгледаме проста програма, като инициализираме нов обект DateTime. Когато инициализираме нов обект, ще трябва да предадем определени параметри, за да зададем стойност на датата.
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
В горния изход можете да видите, че тъй като не сме предоставили никаква времева стойност, следователно обектът DateTime е използвал времето по подразбиране.
Свойства на обекта DateTime
Обектът DateTime предлага множество различни свойства, за да помогне на потребителите да извличат данни за обекта за дата и час.
Тук ще обсъдим няколко важни свойства за дата и час:
Ден
Свойството day извлича зададената дата на обекта дата-час. Връща целочислена стойност и не приема никакъв аргумент.
Синтаксис:
int date = dt.Day;
Месец
Свойството Month извлича зададения месец на обекта дата-час. Връща целочислена стойност и не приема никакъв аргумент.
Синтаксис:
int month = dt.Month;
Година
Свойството Year извлича зададената година на обекта дата-час. Връща целочислена стойност и не приема никакъв аргумент.
Синтаксис:
int yr = dt.Year;
Ден от седмицата
Свойството Day of the week извлича целочислената стойност на деня от седмицата от зададения обект date-time. Той също така изисква кастинг, за да приеме целочислена стойност. Не приема никакъв аргумент.
Синтаксис:
int dayWeek = (int)dt.DayOfWeek;
Ден на годината
Свойството Day of year извлича деня на годината от зададената стойност на датата в обекта date-time. Връща целочислена стойност и не приема никакъв аргумент.
Синтаксис:
int dayYear = dt.DayOfYear;
Час
Свойството day извлича зададената дата на обекта дата-час. Връща целочислена стойност и не приема никакъв аргумент.
Синтаксис:
int hour = dt.Hour;
Минута
Свойството Min извлича минутната стойност от зададената дата на обекта дата-час. Връща целочислена стойност и не приема никакъв аргумент.
Синтаксис:
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
В горната програма сме задали датата като 05/11/2018. По този начин можем да видим, че системата е извлекла същите стойности, но когато погледнем времевата част, ще видим стойността по подразбиране е 0. Това е така, защото не сме задали никаква времева стойност и по този начин системата автоматично задава стойности по подразбиране до час, минута и секунда.
Какво е форматиране на дата?
Различните приложения и различни програмисти може да изискват различен формат на дата за тяхното използване. Така че, форматирането на датата се използва за форматиране на датата за множество изисквания. DateTime предлага и различни опции за форматиране, за да получите вашата дата в желания формат.
Има различни спецификатори, определени да ви предложат желания формат на датата. Тук ще обсъдим няколко от най-популярните:
Формат за кратко време
Той показва прост формат на времето с час и минути с суфикс от AM или PM. Той се обозначава с „t“ в малък случай.
разлика между повторно тестване и регресивно тестване
Изходният формат ще бъде: 12:00 PM
Формат за дълго време
Той показва формат на удължено време с час, минута и секунда, суфиксирани от AM или PM. То се обозначава с „Т“ в главни букви.
Изходният формат ще бъде: 12:13:12 PM
Кратка дата
Той показва прост формат на датата във формат ММ / ДД / ГГГГ. Той се обозначава с азбуката 'd' в малък случай.
Изходният формат ще бъде: 05.11.2018
Дълга среща
Той показва формат на удължена дата с ден, месец, ден и година. Обозначава се с азбуката „D“ в главни букви.
Изходният формат ще бъде: понеделник, 05 ноември 2018 г.
Ден / месец
Показва формат на датата с дата и месец. Не съдържа подробности за годината. Обозначава се с азбуката „М“ в главни букви.
Изходният формат ще бъде: 5 ноември
Месец година
Той показва формата на датата с месец и година. Не съдържа подробности за датата. Обозначава се с азбуката „Y“ в главни букви.
Изходният формат ще бъде: ноември 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 AM
Кратка дата: 5.11.2018
Дълга дата: понеделник, 5 ноември 2018 г.
Ден с месец: 5 ноември
Месец с година: ноември 2018
В горната програма сме инициализирали стойността на датата в първия ред и след това се опитахме да използваме една и съща стойност, за да получим различни формати.
Как да получа текущата дата на часа?
Обектът DateTime съдържа редица различни методи за достъп до системното време. Методът „Сега“ ви позволява да получите текущото системно време / дата и дори ви позволява да оперирате с него.
Синтаксисът за получаване на текущото време ще бъде:
DateTime today = DateTime.Now;
След като дефинираме и съхраним сега в обект DateTime. Можем лесно да го преобразуваме в низ, за да получим текущата дата-час или дори да променим формата на датата, като използваме описаните по-горе спецификатори.
Таймер C #
Таймерът в C # позволява на програмистите да задават интервал от време за изпълнение на определен набор от код или инструкция по повтарящ се начин. Много е полезно в случай, че спецификацията на приложението ви изисква да изпълнявате събитие след всеки определен интервал.
Например, по време на внедряването на приложение за архивиране на данни.
Нека разгледаме проста програма за прилагане на таймер:
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 секунди.
В горната програма първо инициализирахме System.Timer. След това задаваме интервалното време за таймера. Тук сме запазили интервала от 2000 милисекунди, можете да предоставите всяко изпълнение според вашите изисквания. След изтичане на времевия интервал трябва да изпълним някаква инструкция, като извикаме някакъв метод.
Тук извикахме “OnTimerEvent” на всеки две секунди. Методът ще приеме два параметъра, първият е „обект“, а друг е „ElapsedEventArgs“.
Също така трябва да нулираме таймера всеки път, когато той достигне интервал и също така трябва да го активираме. Следователно както автоматичното нулиране, така и активирането на таймера са маркирани като истина. След това пишем нашето персонализирано съобщение в конзолата и също добавяме линия за четене, за да сме сигурни, че конзолата остава отворена до намесата на потребителя.
C # Хронометър
Хронометърът се използва в C # за измерване на времето. Той е много полезен при бенчмаркинг на ефективността на кода по време на оптимизацията на кода. Той може да се използва за непрекъснато наблюдение на производителността на кода / приложението и за поддържане на проверка на всяко понижаване на производителността.
Хронометърът може точно да измерва времето, изминало по време на събитие и е идеалният избор за синхронизиране на всяко събитие в програмата. Класът на хронометъра е дефиниран в пространството от имена System.Diagnostics и трябва да бъде създаден екземпляр за използване. Това го прави доста полезен за приложения, които изискват многопоточност. Обажданията за събития могат да бъдат изпълнени с помощта на метода thread.sleep.
Какво е методът на съня?
Методът на заспиване се използва за пауза на текущата нишка за определен период от време. Приема времето в милисекунди. Сънят е много полезен в среда с много нишки, където искате една нишка да спре, за да направи път за други нишки да завършат изпълнението си.
Синтаксисът за C # Sleep метод е:
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(); } } }
Изход
Резултатът от горната програма ще бъде нещо подобно:
Последният ред показва времето, изминало между старта и спирките на хронометъра.
В горната програма дефинирахме променлива хронометър, в която съхранихме екземпляра от клас Хронометър. Използвахме метода StartNew (). Методът startnew създава нов екземпляр всеки път, когато е извикан, поради което е много полезен, когато искаме да стартираме хронометъра от самото начало.
Свойството Elapsed на хронометъра позволява на потребителя да записва времевия интервал на изпълнението. В крайна сметка просто отпечатахме изминалото време на конзолата.
Заключение
Датата, времето, таймерът и хронометърът се използват в езика за програмиране C # за задоволяване на различни цели. Обект DateTime се използва за събиране на информация за датата и часа на системата или за задаване на персонализирана дата и час за използване за конкретно изискване на приложението.
Таймерът, от друга страна, се използва за задаване на интервал от време между изпълнението на определени команди или събития.
Сънят е част от System.Threeading и се използва за пауза или спиране на изпълнението за определен интервал от време. Това позволява на програмистите да стартират друга нишка в многопоточната среда, докато предишната нишка е на пауза.
Хронометърът може да се използва за измерване на производителността или времето, прекарано в изпълнението на определено събитие. Той може да предложи прецизно измерване на изминалото време или отметки, които могат да се използват, за да се контролира ефективността на приложението.
=> Разгледайте цялата серия C # учебни уроци тук
Препоръчително четене
- Урок за Python DateTime с примери
- Възможност за работа на свободна практика на непълно работно време за експерти по селен
- Урок за отражение на Java с примери
- 10 най-добър софтуер за часовник за свободно време за проследяване на времето на служителите
- Изпълнение на тестови случаи с използване на ALM / QC (Урок на 5-ия микрофокус ALM QC)
- Хранилище на обекти в QTP - Урок # 22
- Функции за дата и час в C ++ с примери
- TimeShiftX, издаден за опростяване на тестването на изместване на времето