C# Tarih OADate Dönüşümleri

C# Tarih OADate Dönüşümleri

19 Haziran 2018 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 346
Yaklaşık okuma süresi : 2 DK
C# MdiForm İşlemleri ve Panel İçinde Form Açmak
C# ile Versiyon Bilgisini Almak
C# Tarih OADate Dönüşümleri
5 (100%) 1 Oy

C# Tarih OADate Dönüşümleri , yazımız ile c sharp eğitimlerimize devam ediyoruz.  Bir tarihi double a çevirmeyi ve  double olan bir sayıyı tarih türüne dönüştürmeyi anlatacağım.  C Sharp Date Değişkenini Sayı Değerine Dönüştürme dersimde bu konudan bahsetmiştim ama sonradan gördüm ki o ders biraz eksik olmuş. Bir takipçim oluşan bu sayı değerini tekrar nasıl tarih yapacağımızı sormuştu. Önceki dersimde bundan bahsetmemiştim. Biraz daha derinlemesine araştırma yapınca geri dönüştürmeyi ve tarihin yanında saat bilgisinin de tutulduğunu gördüm. Bu sebeple bu dersi yazma gereği duydum. Lafı fazla uzatmadan C Sharp Tarih OADate Dönüşümleri dersimize geçelim.

C sharp öğren

C Sharp Tarih OADate Dönüşümleri

Yukarıda bağlantısını verdiğim derste bir tarih değerini double sayıya convert etmeyi göstermiştim. Bu dersimizde bir tarih değerini saat bilgisi ile birlikte double bir değere dönüştürmeyi ve bu double değeri tekrar bir tarih değerine dönüştürmeyi göstereceğim.

Advertisements

ToOADate (OLE Otomasyon Tarihi);

01.01.1900 00:00:00 günlerin adedini temsil etmektedir… ToOADate, tam kısım yani virgülden önceki kısım günü temsil eder ve ondalık kısım zamanı / saati temsil eder.

DateTime To Double 

Aşağıdaki kodlar tarih değerini ondalık sayıya dönüştürür.

DateTime Tarih = new DateTime(2018, 06, 18, 17, 21, 00);
// 18.06.2018 17:21:00

double OndalikSayi = Tarih.ToOADate();
// 43.269,7229166667

Double To DateTime

Aşağıdaki kodlar ondalık sayıyı tarih değerine dönüştürür. Yukarıda elde ettiğimiz double değeri kullanıyoruz.

double OndalikSayi = 43269.7229166667;
DateTime Tarih = DateTime.FromOADate(OndalikSayi);
dateEdit1.EditValue = Tarih;
//18.06.2018 17:21:00

 

01.01.1900 tarihine 43269 gün eklersek mevut tarihi elde ederiz. Yaptığım deneme de 2 günlük bir fark çıktı. 01.01.1900 tarihine yani tarihin başlangıcına 43269 gün eklersek 20.06.2018 tarihini elde ederiz. 43269 – 2 = 43267 gün eklediğimde ise bugün tarihini elde ettik.

İlgili İçerik  C# DevExpress GridControl Kodla Özelleştirme

C Sharp Tarih OADate Dönüşümleri , yazımızda bu kadar dostlar. Normal yöntemleri kullandığımızda bir sorun görünmüyor. Ancak manuel bir deneme yaptık ve sonucun doğru çıkmadığını gördük.

C Sharp Eğitim Seti ve ERP Programlama eğitimi sayfasına gitmek için tıklayınız.

Sağlıcakla ve takipte kalın. 😉

C# MdiForm İşlemleri ve Panel İçinde Form Açmak
C# ile Versiyon Bilgisini Almak