c datetime tutorial
Denne opplæringen vil forklare alt om C # DateTime Class. Du lærer å jobbe med C # DateTime-format inkludert timer, stoppeklokke og hvilemetoder:
Tid og dato brukes mye i flere programvareprosjekter. Vi arbeider ofte med dato- og tidsobjekter mens vi skriver forskjellige programmer.
Dato klokkeslett har forskjellige applikasjoner som å få nåværende dato-klokkeslett, legge til en tidsstempel i variabel- / filnavn, bruke dato klokkeslett for validering, etc. Med så mange applikasjoner kan du enkelt gjette hvor viktig dato-klokkeslett objektet er for programmerere.
=> Sjekk ut de grundige C # -opplæringsveiledningene her
Hva du vil lære:
- Hvordan initialisere C # DateTime-objektet?
- Egenskaper til DateTime-objektet
- Hva er datoformatering?
- Hvordan få dagens dato?
- C# Timer
- C # Stoppeklokke
- Hva er søvnmetode?
- Konklusjon
- Anbefalt lesing
Hvordan initialisere C # DateTime-objektet?
DateTime er en struktur i systemnavnområdet. Det hjelper programmererne å hente informasjon om systemdato, tid, måned, år eller til og med ukedagen. Det tillater også brukere å utføre operasjoner på de hentede dato- og tidsverdiene.
La oss ta en titt på et enkelt program ved å initialisere et nytt DateTime-objekt. Når vi initialiserer et nytt objekt, må vi passere visse parametere for å sette datoverdi.
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 passert datoen som 05, måned som 11 og år som 2018. Dette vil sette datatidforekomsten til parameteren som er gitt av oss. Etter initialiseringen har vi skrevet ut det initialiserte objektet til konsollen ved å konvertere det til en streng.
Resultatet av programmet ovenfor vil være:
11/5/2018 12:00:00
I ovennevnte utdata kan du se at siden vi ikke har oppgitt noen tidsverdi, har DateTime-objektet brukt standardtiden.
Egenskaper til DateTime-objektet
DateTime-objektet tilbyr en rekke forskjellige egenskaper for å hjelpe brukere å hente data om dato og klokkeslett.
Her vil vi diskutere noen viktige egenskaper for dato og tid:
Dag
Dagsegenskap henter den angitte datoen for dato / klokkeslett-objektet. Den returnerer en heltallverdi og godtar ikke noe argument.
Syntaks:
int date = dt.Day;
Måned
Eiendom for måned henter den angitte måneden for objektet dato og klokkeslett. Den returnerer en heltallverdi og godtar ikke noe argument.
Syntaks:
int month = dt.Month;
År
Year-egenskap henter det angitte året for dato-klokkeslett-objektet. Den returnerer en heltallverdi og godtar ikke noe argument.
Syntaks:
int yr = dt.Year;
Ukedag
Eiendom for ukedag henter heltallverdien for ukedagen fra det angitte dato- og tidsobjektet. Det krever også casting for å akseptere heltall. Det godtar ikke noe argument.
Syntaks:
int dayWeek = (int)dt.DayOfWeek;
Dag i året
Eiendom dag av år henter året fra den angitte verdien av datoen i objektet dato-klokkeslett. Den returnerer en heltallverdi og godtar ikke noe argument.
Syntaks:
int dayYear = dt.DayOfYear;
Time
Dagsegenskap henter den angitte datoen for dato / klokkeslett-objektet. Den returnerer en heltallverdi og godtar ikke noe argument.
Syntaks:
int hour = dt.Hour;
Minutt
Min-egenskap henter minuttverdien fra den angitte datoen for objektet dato og klokkeslett. Den returnerer en heltallverdi og godtar ikke noe argument.
Syntaks:
int min = dt.Minute;
Sekund
Andre egenskap henter den andre verdien fra den angitte verdien til objektet dato og klokkeslett. Den returnerer en heltallverdi og godtar ikke noe argument.
Syntaks:
int sec = dt.Second;
La oss se på et enkelt program for å hente disse verdiene.
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(); } } }
Resultatet av programmet ovenfor vil være:
Dato: 5
Måned: 11
År: 2018
Ukedag: 1
Årets dag: 309
Time: 0
Minutt: 0
Andre: 0
I programmet ovenfor har vi satt datoverdien til 05/11/2018. Dermed kan vi se at systemet har hentet de samme verdiene, men når vi ser på tidsdelen vil vi se standardverdien er 0. Det er fordi vi ikke har satt noen tidsverdi, og dermed tildelte systemet automatisk standardverdier til en time, minutt og sekund.
Hva er datoformatering?
Ulike applikasjoner og forskjellige programmerere kan kreve et annet datoformat for deres bruk. Så, datoformatering brukes til å formatere datoen for mange krav. DateTime tilbyr også forskjellige formateringsalternativer for å få datoen i ønsket format.
Det er forskjellige spesifikatorer som er utpekt for å tilby deg ønsket format på datoen. Her vil vi diskutere noen av de populære:
Korttidsformat
Den viser et enkelt tidsformat med en time og minutter etterfulgt av AM eller PM. Det er betegnet med 't' i et lite tilfelle.
beste gratis diskrens for Windows 10
Utdataformatet vil være: 12:00
Langtidsformat
Den viser utvidet tidsformat med time, minutt og sekund etterfulgt av AM eller PM. Det er betegnet med 'T' i store bokstaver.
Utdataformatet vil være: 12:13:12 PM
Kort dato
Den viser et enkelt datoformat i MM / DD / ÅÅÅÅ-format. Det er betegnet med alfabetet “d” i et lite tilfelle.
Utdataformatet vil være: 11.05.2018
Lang dato
Den viser utvidet datoformat med dag, måned, dag og år. Det er betegnet med alfabetet 'D' i store bokstaver.
Utdataformatet vil være: Mandag 5. november 2018
Dag / måned
Den viser datoformat med dato og måned. Den inneholder ikke detaljer om året. Det er betegnet med alfabetet 'M' i store bokstaver.
Utdataformatet vil være: 5. nov
Måned år
Den viser datoformatet med måned og år. Den inneholder ikke datoopplysninger. Det er betegnet med alfabetet 'Y' i store bokstaver.
Utdataformatet vil være: November 2018
La oss se nærmere på disse ved hjelp av et enkelt 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(); } } }
Resultatet av programmet ovenfor 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 det ovennevnte programmet har vi initialisert verdien av datoen i første linje, og deretter har vi prøvd å bruke den samme verdien for å oppnå forskjellige formater.
Hvordan få dagens dato?
DateTime-objektet inneholder en rekke forskjellige metoder for å få tilgang til systemtid. “Nå” -metoden lar deg få gjeldende systemtid / dato, og til og med lar deg bruke den.
Syntaksen for å få aktuell tid vil være:
DateTime today = DateTime.Now;
Når vi har definert og lagret nå i et DateTime-objekt. Vi kan enkelt konvertere den til streng for å få gjeldende dato-tid, eller vi kan til og med endre formatet på datoen ved å bruke spesifikatorene som er diskutert ovenfor.
C# Timer
Timeren i C # lar programmererne sette et tidsintervall for å utføre et bestemt sett med kode eller instruksjon på en gjentagende måte. Det er veldig nyttig hvis applikasjonsspesifikasjonen krever at du utfører en hendelse etter hvert bestemt intervall.
For eksempel, under implementeringen av en data-backup-applikasjon.
La oss ta en titt på et enkelt program for å implementere 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 kjører dette programmet, vil det fortsette å logge tiden etter hvert 2. sekund.
I programmet ovenfor initialiserte vi først System.Timer. Deretter setter vi intervalltiden for tidtakeren. Her har vi holdt intervallet 2000 millisekunder. Du kan tilby enhver implementering i henhold til dine krav. Når tidsintervallet er gått, må vi kjøre noen instruksjoner ved å kalle en metode.
Her kalte vi 'OnTimerEvent' hvert annet sekund. Metoden godtar to parametere, den første er 'objekt' og en annen er 'ElapsedEventArgs'.
Vi må også tilbakestille timeren hver gang den når et intervall, og vi må også aktivere den. Derfor er både automatisk tilbakestilling og aktivering av tidsur merket som sant. Deretter skriver vi vår egendefinerte melding til konsollen og legger også til en leselinje for å sikre at konsollen forblir åpen til brukerintervensjon.
C # Stoppeklokke
Stoppeklokken brukes i C # for å måle tid. Det er veldig nyttig i benchmarking av kodeytelse under kodeoptimalisering. Den kan brukes til å utføre kontinuerlig overvåking av koden / applikasjonsytelsen og for å kontrollere en eventuell nedgradering av ytelsen.
Stoppeklokken kan nøyaktig måle tiden som har gått i løpet av en hendelse, og er det perfekte valget for å planlegge en hendelse i programmet. Klokke for stoppeklokke er definert i navneområdet for System.Diagnostics og må instanseres for bruk. Dette gjør det ganske nyttig for applikasjoner som krever multi-threading. Hendelsesanropene kan utføres ved å bruke metoden thread.sleep.
Hva er søvnmetode?
Sovemetoden brukes til å stoppe den løpende tråden i et bestemt tidsrom. Det aksepterer tid i millisekunder. Søvn er veldig nyttig i et miljø med flere tråder der du vil at en tråd skal stoppe for å gi plass til at andre tråder kan fullføre utførelsen.
Syntaksen for C # Sleep-metoden er:
System.Threading.Thread.Sleep(1000);
Nå har vi lært om søvn og annen stoppeklokke.
La oss lage et enkelt stoppeklokkeprogram for å forstå ting tydeligere.
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(); } } }
Produksjon
Resultatet av programmet ovenfor vil være omtrent slik:
Den siste linjen viser tiden som har gått fra start og stopp av stoppeklokken.
I programmet ovenfor definerte vi en variabel stoppeklokke der vi lagret forekomsten av Stopwatch-klasse. Vi brukte StartNew () -metoden. Startnew-metoden oppretter en ny forekomst hver gang den kalles, derfor er den veldig nyttig når vi vil starte stoppeklokken fra begynnelsen.
Stoppeklokkens medgåtte egenskap lar brukeren registrere løpetiden for løpeturen. Til slutt skrev vi ganske enkelt ut den forløpne tiden til konsollen.
Konklusjon
Dato tid, timer, søvn og stoppeklokke brukes alle i C # programmeringsspråk for å tilfredsstille forskjellige formål. Et DateTime-objekt brukes til å samle informasjon om dato og klokkeslett for systemet eller for å angi en tilpasset dato og tid for bruk for et bestemt applikasjonskrav.
Timeren, derimot, brukes til å stille et tidsintervall mellom utførelsen av visse kommandoer eller hendelser.
Søvn er den delen av System.Trading og brukes til å stoppe eller stoppe kjøringen i et bestemt tidsintervall. Dette gjør at programmererne kan starte en annen tråd i flertrådingsmiljøet mens den forrige tråden er satt på pause.
Stoppeklokken kan brukes til å måle ytelsen eller tiden brukt på gjennomføringen av en bestemt hendelse. Det kan tilby en nøyaktig måling av forløpt tid eller flått som kan brukes til å holde applikasjonsytelsen i sjakk.
=> Utforsk hele serien av C # Training Tutorials her
Anbefalt lesing
- Python DateTime Tutorial med eksempler
- Deltid frilansende jobbmulighet for seleneksperter
- Java Reflection Tutorial med eksempler
- 10 beste gratis tidsprogramvare for tidssporing av ansatte
- Utføre testtilfeller ved bruk av ALM / QC (dag 5 Micro Focus ALM QC opplæring)
- Object Repository i QTP - Opplæring # 22
- Funksjoner for dato og tid i C ++ med eksempler
- TimeShiftX Utgitt for å forenkle Time Shift-testing