c datetime tutorial
Bu Eğitim C # DateTime Sınıfı Hakkında Her Şeyi Açıklayacaktır. Zamanlayıcı, Kronometre ve Uyku Yöntemleri Dahil C # DateTime Formatıyla Çalışmayı Öğreneceksiniz:
Saat ve tarih birçok yazılım projesinde yaygın olarak kullanılmaktadır. Farklı programlar yazarken genellikle tarih ve saat nesneleriyle ilgileniriz.
Tarih saat, geçerli tarih-saati alma, değişken / dosya adlarına bir zaman damgası ekleme, doğrulama için tarih saati kullanma vb. Gibi çeşitli uygulamalara sahiptir. Bu kadar çok uygulama ile tarih-saat nesnesinin programcılar için ne kadar önemli olduğunu kolayca tahmin edebilirsiniz.
=> Derinlemesine C # Eğitim Öğreticilerine Buradan Göz Atın
Ne öğreneceksin:
- C # DateTime Nesnesi Nasıl Başlatılır?
- DateTime Nesnesinin Özellikleri
- Tarih Biçimlendirme Nedir?
- Güncel Tarih Saati Nasıl Alınır?
- C # Zamanlayıcı
- C # Kronometre
- Uyku Yöntemi Nedir?
- Sonuç
- Önerilen Kaynaklar
C # DateTime Nesnesi Nasıl Başlatılır?
DateTime, Sistem ad alanındaki bir Struct. Programcıların sistem tarihi, saati, ayı, yılı ve hatta haftanın günü hakkında bilgi almasına yardımcı olur. Ayrıca, kullanıcıların, alınan tarih-saat değerleri üzerinde işlem yapmasına olanak tanır.
Yeni bir DateTime nesnesini başlatarak basit bir programa bakalım. Yeni bir nesneyi başlattığımızda, tarih değerini ayarlamak için belirli parametreleri iletmemiz gerekecek.
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(); } } }
Burada tarihi 05, ayı 11 ve yılı 2018 olarak geçtik. Bu, veri zamanı örneğini tarafımızdan sağlanan parametreye ayarlayacaktır. İlklendirmeden sonra, başlatılmış nesneyi bir dizeye dönüştürerek konsola yazdırdık.
Yukarıdaki programın çıktısı şöyle olacaktır:
05.11.2018 00:00:00
Yukarıdaki çıktıda, herhangi bir zaman değeri sağlamadığımız için DateTime nesnesinin varsayılan zamanı kullandığını görebilirsiniz.
DateTime Nesnesinin Özellikleri
DateTime nesnesi, kullanıcıların tarih ve saat nesnesi hakkında veri almasına yardımcı olmak için bir dizi farklı özellik sunar.
Burada birkaç önemli tarih ve saat özelliğini tartışacağız:
Gün
Day özelliği, tarih-saat nesnesinin ayarlanan tarihini alır. Bir tamsayı değeri döndürür ve herhangi bir argüman kabul etmez.
Sözdizimi:
int date = dt.Day;
Ay
Month özelliği, tarih-saat nesnesinin ayarlanan ayını alır. Bir tamsayı değeri döndürür ve herhangi bir argüman kabul etmez.
Sözdizimi:
int month = dt.Month;
Yıl
Year özelliği, tarih-saat nesnesinin ayarlanan yılını alır. Bir tamsayı değeri döndürür ve herhangi bir argüman kabul etmez.
Sözdizimi:
int yr = dt.Year;
Haftanın günü
Day of the week özelliği, ayarlanan tarih-saat nesnesinden haftanın gününün tamsayı değerini alır. Ayrıca tamsayı değerini kabul etmek için çevrim gerektirir. Herhangi bir argümanı kabul etmiyor.
Sözdizimi:
int dayWeek = (int)dt.DayOfWeek;
Yılın Günü
Day of year özelliği, tarih-saat nesnesindeki tarihin ayarlanan değerinden yılın gününü alır. Bir tamsayı değeri döndürür ve herhangi bir argüman kabul etmez.
Sözdizimi:
int dayYear = dt.DayOfYear;
Saat
Day özelliği, tarih-saat nesnesinin ayarlanan tarihini alır. Bir tamsayı değeri döndürür ve herhangi bir argüman kabul etmez.
Sözdizimi:
int hour = dt.Hour;
Dakika
Min özelliği, tarih-saat nesnesinin ayarlanan tarihinden dakika değerini alır. Bir tamsayı değeri döndürür ve herhangi bir argüman kabul etmez.
Sözdizimi:
int min = dt.Minute;
İkinci
İkinci özellik, ikinci değeri tarih-saat nesnesinin ayar değerinden alır. Bir tamsayı değeri döndürür ve herhangi bir argüman kabul etmez.
Sözdizimi:
int sec = dt.Second;
Bu değerleri almak için basit bir programa bakalım.
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(); } } }
Yukarıdaki programın çıktısı şöyle olacaktır:
Tarih: 5
Ay: 11
Yıl: 2018
Haftanın günü: 1
Yılın günü: 309
Saat: 0
Dakika: 0
İkinci: 0
Yukarıdaki programda tarih değerini 05/11/2018 olarak ayarladık. Böylece sistemin aynı değerleri getirdiğini görebiliriz ancak zaman bölümüne baktığımızda varsayılan değerin 0 olduğunu göreceğiz. Bunun nedeni, herhangi bir zaman değeri belirlememiş olmamız ve bu nedenle sisteme otomatik olarak varsayılan değerler atamamızdır. bir saat, dakika ve saniyeye.
Tarih Biçimlendirme Nedir?
Farklı uygulamalar ve farklı programcılar, kullanımları için farklı bir tarih biçimi gerektirebilir. Bu nedenle, tarih biçimlendirmesi, tarihi çeşitli gereksinimlere göre biçimlendirmek için kullanılır. DateTime ayrıca tarihinizi istenen formatta almak için farklı formatlama seçenekleri sunar.
Size istediğiniz tarih biçimini sunmak için belirlenmiş farklı tanımlayıcılar vardır. Burada popüler olanlardan birkaçını tartışacağız:
Kısa Saat Formatı
Saat ve dakikaların sonuna AM veya PM eklenmiş basit bir saat biçimi görüntüler. Küçük bir durumda 't' ile gösterilir.
java dizisinden bir öğe nasıl kaldırılır
Çıktı biçimi şöyle olacaktır: 12:00 PM
Uzun Saat Biçimi
Saat, dakika ve saniyenin sonuna AM veya PM eklenmiş genişletilmiş zaman formatını görüntüler. Büyük harfle 'T' ile gösterilir.
Çıktı biçimi şöyle olacaktır: 12:13:12
Kısa tarih
AA / GG / YYYY biçiminde basit bir tarih biçimi görüntüler. Küçük bir durumda 'd' alfabesi ile gösterilir.
Çıktı biçimi şöyle olacaktır: 11/05/2018
Uzun Tarih
Gün, ay, gün ve yıl ile genişletilmiş tarih formatını görüntüler. Büyük harfle “D” harfiyle gösterilir.
Çıktı formatı şu şekilde olacaktır: 05 Kasım 2018, Pazartesi
Gün ay
Tarih ve Ay ile tarih formatını gösterir. Yıl ayrıntılarını içermez. Büyük harfle 'M' harfiyle gösterilir.
Çıktı biçimi şu şekilde olacaktır: 5 Kasım
Ay yıl
Tarih formatını Ay ve Yıl olarak gösterir. Tarih ayrıntılarını içermez. Büyük harfle 'Y' harfiyle gösterilir.
Çıktı biçimi şu şekilde olacaktır: Kasım, 2018
Basit bir program yardımıyla bunlara detaylı bir şekilde bakalım.
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(); } } }
Yukarıdaki programın çıktısı şöyle olacaktır:
Kısa süre: 00:00
Uzun süreli: 00:00:00
Kısa Tarih: 11/5/2018
Uzun tarih: 5 Kasım 2018 Pazartesi
Aylı gün: 5 Kasım
Yıl ile ay: Kasım 2018
Yukarıdaki programda ilk satırdaki tarihin değerini başlattık ve daha sonra aynı değeri kullanarak farklı formatlar elde etmeye çalıştık.
Güncel Tarih Saati Nasıl Alınır?
DateTime nesnesi, sistem saatine erişmek için bir dizi farklı yöntem içerir. 'Şimdi' yöntemi, geçerli sistem saatini / tarihini almanıza ve hatta üzerinde işlem yapmanıza izin verir.
Geçerli saati almak için sözdizimi şöyle olacaktır:
DateTime today = DateTime.Now;
Şimdi bir DateTime nesnesini tanımlayıp kaydettikten sonra. Geçerli tarih-saati elde etmek için onu kolayca dizeye dönüştürebiliriz veya yukarıda tartışılan tanımlayıcıları kullanarak tarihin biçimini bile değiştirebiliriz.
C # Zamanlayıcı
C # 'daki zamanlayıcı, programcıların belirli bir kod setini veya talimatı tekrar eden bir şekilde yürütmek için bir zaman aralığı ayarlamasına izin verir. Uygulama spesifikasyonunuzun her belirli aralıktan sonra bir olay yürütmenizi gerektirmesi durumunda çok kullanışlıdır.
Örneğin, bir veri yedekleme uygulamasının uygulanması sırasında.
Bir zamanlayıcı uygulamak için basit bir programa bakalım:
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')); } } }
Yani, bu programı çalıştırırsanız, her 2 saniyede bir süreyi günlüğe kaydetmeye devam edecektir.
Yukarıdaki programda, önce System.Timer'ı başlattık. Ardından zamanlayıcı için aralık süresini ayarlıyoruz. Burada aralığı 2000 milisaniye olarak tuttuk, ihtiyacınıza göre herhangi bir uygulama sağlayabilirsiniz. Zaman aralığı dolduğunda, bazı yöntemleri çağırarak bazı talimatlar çalıştırmamız gerekir.
Burada her iki saniyede bir 'OnTimerEvent' adını verdik. Yöntem iki parametre kabul eder, birincisi “nesne” ve diğeri “ElapsedEventArgs”.
Ayrıca, bir aralığa her ulaştığında zamanlayıcıyı sıfırlamamız ve ayrıca etkinleştirmemiz gerekir. Bu nedenle, hem otomatik sıfırlama hem de zamanlayıcı etkinleştirme doğru olarak işaretlenir. Ardından özel mesajımızı konsola yazıyoruz ve ayrıca konsolun kullanıcı müdahalesine kadar açık kalmasını sağlamak için bir okuma satırı ekliyoruz.
C # Kronometre
Kronometre, zamanı ölçmek için C # 'da kullanılır. Kod optimizasyonu sırasında kod performansını karşılaştırmada çok kullanışlıdır. Kod / uygulama performansının sürekli izlenmesi ve herhangi bir performans düşüşünün kontrol edilmesi için kullanılabilir.
Kronometre, bir etkinlik sırasında geçen süreyi doğru bir şekilde ölçebilir ve programdaki herhangi bir olayı zamanlamak için mükemmel bir seçimdir. Stopwatch sınıfı, System.Diagnostics ad alanında tanımlanır ve kullanım için somutlaştırılması gerekir. Bu, çoklu iş parçacığı gerektiren uygulamalar için oldukça kullanışlı hale getirir. Olay çağrıları, thread.sleep yöntemi kullanılarak yürütülebilir.
Uyku Yöntemi Nedir?
Uyku yöntemi, belirli bir süre boyunca çalışan iş parçacığını duraklatmak için kullanılır. Zamanı milisaniye olarak kabul eder. Uyku, bir iş parçacığının durarak diğer iş parçacıklarının yürütmelerini tamamlamasına yol açmasını istediğiniz çok iş parçacığı ortamında çok kullanışlıdır.
C # Uyku yönteminin sözdizimi şöyledir:
System.Threading.Thread.Sleep(1000);
Şimdi uyku ve diğer kronometre derslerini öğrendik.
Olayları daha net anlamak için basit bir kronometre programı oluşturalım.
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(); } } }
Çıktı
Yukarıdaki programın çıktısı şu şekilde olacaktır:
Son satır, kronometrenin başlaması ve durması arasında geçen süreyi gösterir.
Yukarıdaki programda, Kronometre sınıfının örneğini sakladığımız değişken bir kronometre tanımladık. StartNew () yöntemini kullandık. Startnew yöntemi, her çağrıldığında yeni bir örnek oluşturur, bu nedenle kronometreyi baştan başlatmak istediğimizde çok kullanışlıdır.
Kronometrenin Elapsed özelliği, kullanıcının çalışmanın zaman aralığını kaydetmesine olanak tanır. Sonunda, geçen süreyi konsola yazdırdık.
Sonuç
Tarih saat, zamanlayıcı, uyku ve kronometre, çeşitli amaçların karşılanması için C # programlama dilinde kullanılır. DateTime nesnesi, sistemin tarihi ve saati hakkında bilgi toplamak veya belirli bir uygulama gereksinimi için kullanılmak üzere özel bir tarih ve saat ayarlamak için kullanılır.
Öte yandan zamanlayıcı, belirli komutların veya olayların yürütülmesi arasında bir zaman aralığı ayarlamak için kullanılır.
Uyku, System.Threading'in bir parçasıdır ve yürütmeyi belirli bir zaman aralığında duraklatmak veya durdurmak için kullanılır. Bu, programcıların, önceki iş parçacığı duraklatılırken çoklu iş parçacığı ortamında başka bir iş parçacığı başlatmasına izin verir.
Kronometre, belirli bir olayın gerçekleştirilmesi için harcanan performansı veya zamanı ölçmek için kullanılabilir. Uygulama performansını kontrol altında tutmak için kullanılabilecek geçen sürenin veya işaretlerin hassas bir ölçümünü sunabilir.
=> C # Eğitim Öğreticilerinin Tüm Serisini Buradan Keşfedin
Önerilen Kaynaklar
- Örneklerle Python DateTime Eğitimi
- Selenium Uzmanları için Yarı Zamanlı Serbest Çalışma Fırsatı
- Örneklerle Java Yansıtma Eğitimi
- Çalışan Zaman Takibi İçin En İyi 10 Ücretsiz Zaman Saati Yazılımı
- ALM / QC Kullanarak Test Durumlarını Yürütme (5. Gün Micro Focus ALM QC Eğitimi)
- QTP'de Nesne Deposu - Öğretici # 22
- Örneklerle C ++ 'da Tarih ve Saat İşlevleri
- TimeShiftX, Zaman Kaydırma Testini Basitleştirmek İçin Yayınlandı