c datetime tutorial
Aquest tutorial explicarà tot sobre la classe C # DateTime. Aprendràs a treballar amb el format C # DateTime, inclosos els temporitzadors, el cronòmetre i els mètodes de son:
L’hora i la data s’utilitzen àmpliament en diversos projectes de programari. Sovint tractem objectes de data i hora mentre escrivim diferents programes.
L'hora de la data té diverses aplicacions, com ara obtenir la data-hora actual, afegir una marca de temps als noms de variables / fitxers, utilitzar la data per validar-la, etc. Amb tantes aplicacions podeu endevinar fàcilment la importància de l'objecte data-hora per als programadors.
=> Consulteu aquí els tutorials de formació en profunditat C #
Què aprendreu:
- Com inicialitzar l'objecte C # DateTime?
- Propietats de l'objecte DateTime
- Què és el format de data?
- Com obtenir l’hora actual de la data?
- Temporitzador C #
- C # Cronòmetre
- Què és el mètode del son?
- Conclusió
- Lectura recomanada
Com inicialitzar l'objecte C # DateTime?
DateTime és un Struct de l’espai de noms del sistema. Ajuda els programadors a recuperar informació sobre la data, l'hora, el mes, l'any o fins i tot el dia de la setmana. També permet als usuaris realitzar operacions amb els valors de data i hora recuperats.
Vegem un programa senzill inicialitzant un nou objecte DateTime. Quan inicialitzem un objecte nou, haurem de passar determinats paràmetres per establir el valor de la data.
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(); } } }
Aquí hem passat la data del 05, el mes de l'11 i l'any del 2018. Això establirà la instància de temps de les dades al paràmetre que proporcionem. Després de la inicialització, hem imprès l’objecte inicialitzat a la consola convertint-lo en una cadena.
La sortida del programa anterior serà:
05/11/2018 12:00:00 AM
A la sortida anterior, podeu veure que, ja que no hem proporcionat cap valor horari, per tant, l'objecte DateTime ha utilitzat l'hora predeterminada.
Propietats de l'objecte DateTime
L'objecte DateTime ofereix diverses propietats diferents per ajudar els usuaris a recuperar dades sobre l'objecte de data i hora.
Aquí analitzarem algunes propietats importants de data i hora:
Dia
La propietat Day recupera la data establerta de l'objecte data-hora. Retorna un valor enter i no accepta cap argument.
Sintaxi:
int date = dt.Day;
Mes
La propietat Mes recupera el mes establert de l'objecte data-hora. Retorna un valor enter i no accepta cap argument.
Sintaxi:
int month = dt.Month;
Curs
La propietat Any recupera l'any establert de l'objecte data-hora. Retorna un valor enter i no accepta cap argument.
Sintaxi:
int yr = dt.Year;
Dia de la setmana
La propietat Dia de la setmana recupera el valor enter del dia de la setmana de l'objecte data-hora establert. També requereix un càsting per acceptar el valor enter. No accepta cap argument.
Sintaxi:
int dayWeek = (int)dt.DayOfWeek;
Dia de l'any
La propietat del dia de l'any recupera el dia de l'any a partir del valor establert de la data a l'objecte data-hora. Retorna un valor enter i no accepta cap argument.
Sintaxi:
int dayYear = dt.DayOfYear;
Hores
La propietat Day recupera la data establerta de l'objecte data-hora. Retorna un valor enter i no accepta cap argument.
Sintaxi:
int hour = dt.Hour;
Minut
La propietat mínima recupera el valor del minut a partir de la data establerta de l'objecte data-hora. Retorna un valor enter i no accepta cap argument.
Sintaxi:
int min = dt.Minute;
Segon
La segona propietat recupera el segon valor del valor establert de l'objecte data-hora. Retorna un valor enter i no accepta cap argument.
Sintaxi:
int sec = dt.Second;
Vegem un programa senzill per recuperar aquests valors.
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(); } } }
La sortida del programa anterior serà:
Data: 5
Mes: 11
Any: 2018
Dia de la setmana: 1
Dia de l'any: 309
Hora: 0
Minut: 0
Segon: 0
Al programa anterior, hem definit el valor de la data com a 05/11/2018. Per tant, podem veure que el sistema ha obtingut els mateixos valors, però quan observem la part de temps, veurem que el valor per defecte és 0. És perquè no hem establert cap valor de temps i, per tant, el sistema assigna automàticament els valors per defecte. a una hora, minut i segon.
Què és el format de data?
Diferents aplicacions i programadors diferents poden requerir un format de data diferent per al seu ús. Per tant, el format de la data s’utilitza per formatar la data per a nombrosos requisits. DateTime també ofereix diferents opcions de format per obtenir la data en el format desitjat.
Hi ha diferents especificadors designats per oferir-vos el format desitjat de la data. Aquí en parlarem alguns dels més populars:
Format de temps curt
Mostra un format d’hora senzill amb una hora i uns minuts amb el sufix AM o PM. Es denota per 't' en un petit cas.
programa per fer captures de pantalla a l'ordinador
El format de sortida serà: 12:00 PM
Format de temps llarg
Mostra un format d’hora ampliat amb sufix d’hora, minut i segon per AM o PM. Es denota amb “T” en majúscules.
El format de sortida serà: 12:13:12 PM
Data curta
Mostra un format de data senzill en format MM / DD / AAAA. Es denota amb l'alfabet 'd' en un petit cas.
El format de sortida serà: 11/05/2018
Cita llarga
Mostra el format de data ampliat amb el dia, mes, dia i any. Es denota amb l’alfabet “D” en majúscules.
El format de sortida serà: dilluns, 5 de novembre de 2018
Dia / Mes
Mostra el format de data amb Data i Mes. No conté els detalls de l'any. Es denota amb l’alfabet “M” en majúscules.
El format de sortida serà: 5-novembre
Mes Any
Mostra el format de data amb Mes i Any. No conté detalls de la data. Es denota amb l'alfabet 'Y' en majúscules.
El format de sortida serà: novembre de 2018
Vegem-los detalladament amb l’ajut d’un programa senzill.
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(); } } }
La sortida del programa anterior serà:
Temps curt: 12:00 AM
Llarg temps: 12:00:00 AM
Data curta: 05/11/2018
Data llarga: dilluns, 5 de novembre de 2018
Dia amb mes: 5 de novembre
Mes amb any: novembre de 2018
Al programa anterior, hem inicialitzat el valor de la data a la primera línia i després hem intentat utilitzar el mateix valor per obtenir formats diferents.
Com obtenir l’hora actual de la data?
L'objecte DateTime conté diversos mètodes diferents per accedir a l'hora del sistema. El mètode 'Ara' us permet obtenir la data / hora actual del sistema i fins i tot us permet operar-hi.
La sintaxi per obtenir l’hora actual serà:
DateTime today = DateTime.Now;
Un cop hem definit i emmagatzemat ara en un objecte DateTime. El podem convertir fàcilment en cadena per obtenir la data-hora actual o fins i tot podem canviar el format de la data utilitzant els especificadors comentats anteriorment.
Temporitzador C #
El temporitzador de C # permet als programadors establir un interval de temps per executar un determinat conjunt de codi o instrucció de manera recurrent. És molt útil en cas que les especificacions de l'aplicació requereixin que executeu un esdeveniment després de cada interval determinat.
Per exemple, durant la implementació d’una aplicació de còpia de seguretat de dades.
Vegem un programa senzill per implementar un temporitzador:
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')); } } }
Per tant, si executeu aquest programa, continuarà registrant el temps després de cada 2 segons.
Al programa anterior, inicialitzem primer System.Timer. A continuació, establim l'interval de temps per al temporitzador. Aquí hem mantingut l'interval de 2000 mil·lisegons, podeu proporcionar qualsevol implementació segons el vostre requisit. Un cop transcorregut l'interval de temps, hem d'executar algunes instruccions trucant a algun mètode.
Aquí anomenàvem “OnTimerEvent” cada dos segons. El mètode acceptarà dos paràmetres, el primer és 'objecte' i un altre és 'ElapsedEventArgs'.
També hem de restablir el temporitzador cada vegada que arriba a un interval i també l’hem d’habilitar. Per tant, tant el restabliment automàtic com l’activació del temporitzador es marquen com a certs. A continuació, escrivim el nostre missatge personalitzat a la consola i també afegim una línia de lectura per assegurar-nos que la consola romangui oberta fins a la intervenció de l'usuari.
C # Cronòmetre
El cronòmetre s’utilitza a C # per mesurar el temps. És molt útil per comparar el rendiment del codi durant l'optimització del codi. Es pot utilitzar per realitzar un seguiment continu del rendiment del codi / aplicació i per comprovar qualsevol baixada de rendiment.
El cronòmetre pot mesurar amb precisió el temps transcorregut durant un esdeveniment i és l'elecció perfecta per programar qualsevol esdeveniment del programa. La classe de cronòmetre es defineix a l’espai de noms System.Diagnostics i s’ha d’instanciar per utilitzar-la. Això el fa molt útil per a aplicacions que requereixen multi-threading. Les trucades d'esdeveniment es poden executar mitjançant el mètode thread.sleep.
Què és el mètode del son?
El mètode de repòs s’utilitza per aturar el fil en curs durant un període de temps específic. Accepta el temps en mil·lisegons. El son és molt útil en un entorn multi-threading on voleu que s’aturi un thread per deixar lloc a altres fils per completar la seva execució.
La sintaxi del mètode C # Sleep és:
System.Threading.Thread.Sleep(1000);
Ara hem après sobre el son i altres classes de cronòmetre.
Creem un programa senzill de cronòmetre per entendre les coses amb més claredat.
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(); } } }
Sortida
La sortida del programa anterior serà una cosa així:
L’última línia mostra el temps transcorregut entre l’inici i les parades del cronòmetre.
Al programa anterior, hem definit un cronòmetre variable en el qual emmagatzemem la instància de la classe Stopwatch. Hem utilitzat el mètode StartNew (). El mètode startnew crea una nova instància cada vegada que es crida, per tant és molt útil quan volem iniciar el cronòmetre des del principi.
La propietat Elapsed del cronòmetre permet a l'usuari registrar el lapse de temps de l'execució. Al final, simplement vam imprimir el temps transcorregut a la consola.
Conclusió
La data, el temporitzador, la son i el cronòmetre s’utilitzen en llenguatge de programació C # per satisfer diversos propòsits. Un objecte DateTime s’utilitza per recopilar informació sobre la data i l’hora del sistema o per definir una data i hora personalitzades per utilitzar-les per a un requisit d’aplicació concret.
El temporitzador, d'altra banda, s'utilitza per establir un interval de temps entre l'execució de certes ordres o esdeveniments.
El son és la part de System.Threading i s’utilitza per aturar o aturar l’execució durant un interval de temps determinat. Això permet als programadors iniciar un altre fil a l'entorn de múltiples fils mentre el fil anterior està en pausa.
El cronòmetre es pot utilitzar per mesurar el rendiment o el temps dedicat a l'execució d'un esdeveniment determinat. Pot oferir una mesura precisa del temps transcorregut o les paparres que es poden utilitzar per mantenir el rendiment de l'aplicació sota control.
=> Exploreu tota la sèrie de tutorials de formació en C # aquí
Lectura recomanada
- Tutorial de Python DateTime amb exemples
- Oportunitat de treball autònom a temps parcial per a experts en seleni
- Tutorial de reflexió de Java amb exemples
- 10 millors programes de rellotge de temps lliure per al seguiment del temps dels empleats
- Execució de casos de prova mitjançant ALM / QC (Tutorial del dia 5 de Micro Focus ALM QC)
- Dipòsit d'objectes a QTP: tutorial núm. 22
- Funcions de data i hora a C ++ amb exemples
- TimeShiftX llançat per simplificar les proves de canvi de temps