kodu 10/12/2011 12:00:00 AM
içinde DateTime d = DateTime.Today;
sonuç çizgisi içinde DateTime tarih bölümünü ayıklamak. Sadece tarih bölümünü nasıl alabilirim? İki tarihi karşılaştırdığım zaman bölümünü görmezden gelmem gerekiyor.C#
C#
cevap
DateTime
Date
ve Time
hem saklamak için kullanılan bir VeriTürü olduğu için Yani bu iyi çalışması gerekir. Ancak, Date
Bölümü'nü almak için Özellikler sağlar.
Özellik Date
gelen tarihi bölümünü alabilirsiniz. Eğer, zaman bölümünü yok sayarak tarihleri karşılaştırmak DateTime.Year
ve DateTime.DayOfYear
özelliklerinin bir faydalanmak istiyorsanız
http://msdn.microsoft.com/en-us/library/system.datetime.date.aspx
DateTime date1 = new DateTime(2008, 6, 1, 7, 47, 0);
Console.WriteLine(date1.ToString());
// Get date-only portion of date, without its time.
DateTime dateOnly = date1.Date;
// Display date using short date string.
Console.WriteLine(dateOnly.ToString("d"));
// Display date using 24-hour clock.
Console.WriteLine(dateOnly.ToString("g"));
Console.WriteLine(dateOnly.ToString("MM/dd/yyyy HH:mm"));
// The example displays the following output to the console:
// 6/1/2008 7:47:00 AM
// 6/1/2008
// 6/1/2008 12:00 AM
// 06/01/2008 00:00
var object = DateTime.Now; object.Date.ToString ("AA/gg/yyyy SS: dd") [burada] –
(http://stackoverflow.com/a/39316624/2218697), ** ** 'String.Format' kullanarak başka bir çözüm umarım birisine yardım eder. – stom
zaman bileşeni "atmak" için hiçbir yolu yoktur.
DateTime.Today
aynıdır: - İhtiyacınız biçim dizesi ile ToString
kullanmak sadece ekrana sadece tarih bölümü istiyorsanız
DateTime d = DateTime.Now.Date;
, basitçe bunu.
d.ToString("D");
datatimes sadece tarihi karşılaştırmak, Tarih özelliğini kullanın: standard format string "D" (uzun tarih biçimi belirteci) kullanılarak Örneğin
. Eğer
datetime1.Date == datetime2.Date
Bir biçemdizgesi
DateTime time = DateTime.Now;
String format = "MMM ddd d HH:mm yyyy";
Console.WriteLine(time.ToString(format));
DateTime d = DateTime.Today.Date;
Console.WriteLine(d.ToShortDateString()); // outputs just date
kullanabilirsiniz.
kod parçacığı
DateTime d1 = DateTime.Today;
DateTime d2 = DateTime.Today.AddDays(3);
if (d1.Year < d2.Year)
Console.WriteLine("d1 < d2");
else
if (d1.DayOfYear < d2.DayOfYear)
Console.WriteLine("d1 < d2");
Bugün ayrıca 00:00:00 sonuç vermelidir. –
@digem: Bu gece yarısı _shown_, 12:00 olarak mı demek istiyorsun? Olabilirdi. Bugünün kültüre bağımlı bir değer getireceğini sanmıyorum. –
@Henk: ingilizce kültürler) (Today.ToString bu değeri döndürür içinde;) – digEmAll