c datetime tutorial
Denne vejledning forklarer alt om C # DateTime-klasse. Du lærer at arbejde med C # DateTime-format inklusive timer, stopur og sovemetoder:
Tid og dato bruges i vid udstrækning i flere softwareprojekter. Vi beskæftiger os ofte med dato- og tidsobjekter, mens vi skriver forskellige programmer.
Dato tid har forskellige applikationer som at få aktuel dato-tid, tilføje et tidsstempel til variable / filnavne, ved hjælp af dato tid til validering osv. Med så mange applikationer kan du nemt gætte, hvor vigtigt dato-tid objektet er for programmører.
=> Tjek de dybdegående C # -træningsvejledninger her
Hvad du lærer:
- Sådan initialiseres C # DateTime-objektet?
- Egenskaber for DateTime-objektet
- Hvad er datoformatering?
- Sådan får du den aktuelle dato tid?
- C # -timer
- C # Stopur
- Hvad er søvnmetode?
- Konklusion
- Anbefalet læsning
Sådan initialiseres C # DateTime-objektet?
DateTime er en struktur i systemnavneområdet. Det hjælper programmørerne med at hente oplysninger om systemdato, tid, måned, år eller endda ugedag. Det giver også brugerne mulighed for at udføre operationer på de hentede dato- og tidsværdier.
Lad os se på et simpelt program ved at initialisere et nyt DateTime-objekt. Når vi initialiserer et nyt objekt, skal vi videregive bestemte parametre for at indstille datoværdien.
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(); } } }
Her har vi bestået datoen som 05, måned som 11 og år som 2018. Dette vil indstille datatidsinstansen til den parameter, der er leveret af os. Efter initialiseringen har vi udskrevet det initialiserede objekt til konsollen ved at konvertere det til en streng.
Output fra ovenstående program vil være:
11/5/2018 12:00:00
I ovenstående output kan du se, da vi ikke har angivet nogen tidsværdi, derfor har DateTime-objektet brugt standardtiden.
Egenskaber for DateTime-objektet
DateTime-objekt tilbyder en række forskellige egenskaber, der hjælper brugerne med at hente data om dato- og tidsobjektet.
Her vil vi diskutere nogle få vigtige egenskaber på dato:
Dag
Dagsegenskab henter den indstillede dato for objektet dato-klokkeslæt. Det returnerer en heltal og accepterer ikke noget argument.
Syntaks:
int date = dt.Day;
Måned
Månedsejendom henter den indstillede måned for objektet dato-klokkeslæt. Det returnerer en heltal og accepterer ikke noget argument.
Syntaks:
int month = dt.Month;
År
Year-egenskab henter det indstillede år for objektet dato-klokkeslæt. Det returnerer en heltal og accepterer ikke noget argument.
Syntaks:
int yr = dt.Year;
Dag i ugen
Ugedagens egenskab henter heltalets værdi for ugedagen fra det indstillede dato-tidsobjekt. Det kræver også casting for at acceptere heltal. Det accepterer ikke noget argument.
Syntaks:
int dayWeek = (int)dt.DayOfWeek;
Årsdag
Ejendommens dag på året henter årets dag fra den indstillede værdi af datoen i objektet dato-tid. Det returnerer en heltal og accepterer ikke noget argument.
Syntaks:
int dayYear = dt.DayOfYear;
Time
Dagsegenskab henter den indstillede dato for objektet dato-klokkeslæt. Det returnerer en heltal og accepterer ikke noget argument.
Syntaks:
int hour = dt.Hour;
Minut
Min egenskab henter minutværdien fra den indstillede dato for objektet dato-klokkeslæt. Det returnerer en heltal og accepterer ikke noget argument.
Syntaks:
int min = dt.Minute;
Sekund
Anden egenskab henter den anden værdi fra den indstillede værdi af objektet dato-tid. Det returnerer en heltal og accepterer ikke noget argument.
Syntaks:
int sec = dt.Second;
Lad os se på et simpelt program til at hente disse værdier.
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(); } } }
Output fra ovenstående program vil være:
Dato: 5
Måned: 11
År: 2018
Ugedag: 1
Årets dag: 309
Time: 0
Minut: 0
Andet: 0
I ovenstående program har vi indstillet datoværdien til 05/11/2018. Således kan vi se, at systemet har hentet de samme værdier, men når vi ser på tidsdelen, vil vi se, at standardværdien er 0. Det skyldes, at vi ikke har indstillet nogen tidsværdi, og dermed tildelte systemet automatisk standardværdier til en time, minut og sekund.
Hvad er datoformatering?
Forskellige applikationer og forskellige programmerere kan kræve et andet datoformat for deres brug. Så datoformatering bruges til at formatere datoen til adskillige krav. DateTime tilbyder også forskellige formateringsmuligheder for at få din dato i det ønskede format.
Der er forskellige specifikationer, der er udpeget til at tilbyde dig det ønskede format på datoen. Her vil vi diskutere et par af de populære:
Kort tidsformat
Det viser et simpelt tidsformat med en time og minutter efterfulgt af AM eller PM. Det er betegnet med 't' i et lille tilfælde.
hvor kan jeg se anime gratis online
Outputformatet vil være: 12:00 PM
Langtidsformat
Det viser udvidet tidsformat med time, minut og sekund efterfulgt af AM eller PM. Det er betegnet med 'T' i store bogstaver.
Outputformatet vil være: 12:13:12 PM
Kort dato
Det viser et simpelt datoformat i MM / DD / ÅÅÅÅ-format. Det er betegnet med alfabetet 'd' i et lille tilfælde.
Outputformatet vil være: 11/05/2018
Lang dato
Det viser udvidet datoformat med dag, måned, dag og år. Det er betegnet med alfabetet 'D' i store bogstaver.
Outputformatet vil være: Mandag den 5. november 2018
Dag / måned
Det viser datoformat med dato og måned. Det indeholder ikke detaljerne om året. Det er betegnet med alfabetet 'M' i store bogstaver.
Outputformatet vil være: 5. nov
Måned år
Det viser datoformatet med måned og år. Den indeholder ikke datooplysninger. Det er betegnet med alfabetet 'Y' i store bogstaver.
Outputformatet vil være: November 2018
Lad os se nærmere på disse ved hjælp af et simpelt program.
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(); } } }
Output fra ovenstående program vil være:
Kort tid: 12:00
Lang tid: 12:00:00
Kort dato: 11/5/2018
Lang dato: Mandag 5. november 2018
Dag med måned: 5. november
Måned med år: November 2018
I ovenstående program har vi initialiseret datoværdien i første linje, og derefter har vi forsøgt at bruge den samme værdi til at opnå forskellige formater.
Sådan får du den aktuelle dato tid?
DateTime-objekt indeholder en række forskellige metoder til at få adgang til systemtid. Metoden “Nu” giver dig mulighed for at få den aktuelle systemtid / dato og endda give dig mulighed for at betjene det.
Syntaksen for at få aktuel tid vil være:
DateTime today = DateTime.Now;
Når vi har defineret og gemt nu i et DateTime-objekt. Vi kan nemt konvertere det til streng for at få den aktuelle dato-tid, eller vi kan endda ændre formatet på datoen ved hjælp af ovennævnte specifikationer.
C # -timer
Timeren i C # giver programmørerne mulighed for at indstille et tidsinterval for at udføre et bestemt sæt kode eller instruktion på en tilbagevendende måde. Det er meget nyttigt, hvis din applikationsspecifikation kræver, at du udfører en begivenhed efter hvert bestemt interval.
For eksempel, under implementeringen af en data back-up applikation.
Lad os se på et simpelt program til implementering af en timer:
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')); } } }
Så hvis du kører dette program, fortsætter det med at logge tiden efter hvert 2. sekund.
I ovenstående program initialiserede vi først System.Timer. Derefter indstiller vi intervaltiden for timeren. Her har vi holdt intervallet som 2000 millisekunder, du kan levere enhver implementering efter dine krav. Når tidsintervallet er forløbet, er vi nødt til at køre nogle instruktioner ved at kalde en metode.
Her kaldte vi 'OnTimerEvent' hvert andet sekund. Metoden accepterer to parametre, den første er 'objekt' og en anden er 'ElapsedEventArgs'.
Vi er også nødt til at nulstille timeren hver gang, når den når et interval, og vi skal også aktivere den. Derfor er både automatisk nulstilling og timeraktivering markeret som sandt. Derefter skriver vi vores brugerdefinerede besked til konsollen og tilføjer også en readline for at sikre, at konsollen forbliver åben indtil brugerintervention.
C # Stopur
Stopuret bruges i C # til at måle tid. Det er meget nyttigt i benchmarking af kodeydelse under kodeoptimering. Det kan bruges til at udføre kontinuerlig overvågning af kode / applikationsydelse og til at kontrollere enhver ydelsesnedgradering.
Stopuret kan nøjagtigt måle den forløbne tid under en begivenhed og er det perfekte valg til timing af enhver begivenhed i programmet. Stopursklassen er defineret i System.Diagnostics-navneområdet og skal instantieres til brug. Dette gør det ret nyttigt til applikationer, der kræver multi-threading. Begivenhedsopkaldene kan udføres ved hjælp af metoden thread.sleep.
Hvad er søvnmetode?
Sleep-metoden bruges til at sætte den kørende tråd på pause i et bestemt tidsrum. Det accepterer tid i millisekunder. Søvn er meget nyttigt i et miljø med flere tråde, hvor du vil have en tråd til at stoppe for at give plads til andre tråde til at fuldføre deres udførelse.
Syntaksen for C # Sleep-metoden er:
System.Threading.Thread.Sleep(1000);
Nu har vi lært om søvn og andre stopurskurser.
Lad os oprette et simpelt stopursprogram for at forstå tingene mere tydeligt.
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(); } } }
Produktion
Output fra ovenstående program vil være sådan noget:
Den sidste linje viser den forløbne tid mellem stopurets stop og stop.
I ovenstående program definerede vi et variabelt stopur, hvor vi lagrede forekomsten af stopursklassen. Vi brugte metoden StartNew (). Startnew-metoden opretter en ny instans, hver gang den kaldes, og derfor er den meget nyttig, når vi vil starte stopuret fra starten.
Stopurets egenskab forløbet giver brugeren mulighed for at registrere løbetiden for kørslen. I sidste ende udskrev vi simpelthen den forløbne tid til konsollen.
Konklusion
Dato tid, timer, søvn og stopur bruges alle i C # programmeringssprog til at opfylde forskellige formål. Et DateTime-objekt bruges til at indsamle oplysninger om datoen og klokkeslættet for systemet eller til at indstille en brugerdefineret dato og tid til brug for et bestemt applikationskrav.
Timeren bruges derimod til at indstille et tidsinterval mellem udførelsen af bestemte kommandoer eller begivenheder.
Søvn er den del af System.Trådning og bruges til at sætte udførelsen på pause eller standse den i et bestemt tidsinterval. Dette giver programmørerne mulighed for at starte en anden tråd i multitrådingsmiljøet, mens den forrige tråd er sat på pause.
Stopuret kan bruges til at måle ydeevne eller tid brugt på udførelsen af en bestemt begivenhed. Det kan tilbyde en præcis måling af den forløbne tid eller flåter, der kan bruges til at holde applikationsydelsen i skak.
=> Udforsk hele serien af C # -træningsvejledninger her
Anbefalet læsning
- Python DateTime-tutorial med eksempler
- Deltids freelancing jobmulighed for seleneksperter
- Java Reflection Tutorial med eksempler
- 10 Bedste gratis tidsurssoftware til medarbejderes tidssporing
- Udførelse af testtilfælde ved hjælp af ALM / QC (dag 5 Micro Focus ALM QC vejledning)
- Objektlager i QTP - Tutorial # 22
- Funktioner til dato og tid i C ++ med eksempler
- TimeShiftX frigivet for at forenkle test af tidsforskydning