C# 3.0'de, 1/1/2010 tarihinden bu yana nasıl bir süre alabilirim?C# saniyeten beri belirli bir tarih
cevap
böyle Goes:
TimeSpan test = DateTime.Now - new DateTime(2010, 01, 01);
MessageBox.Show(test.TotalSeconds.ToString());
bir liner eğlence için: Sadece zaman dilimi sorunları önlemek için
MessageBox.Show((DateTime.Now - new DateTime(2010, 01, 01))
.TotalSeconds.ToString());
Sen 2 DateTime örneklerini substract ve bir TimeSpan alabilirsiniz:
DateTime date = new DateTime(2010,1,1);
TimeSpan diff = DateTime.Now - date;
double seconds = diff.TotalSeconds;
Bu DST kanıtı mı? – dtb
DST – craigmoliver
TimeSpan t = (DateTime.UtcNow - new DateTime(2010, 1, 1));
int timestamp = (int) t.TotalSeconds;
Console.WriteLine (timestamp);
kazanır UTC/GMT'de olmadığınızı varsayarsak, bu durum saat dilimi sorunlarına neden olur. 1/1/2010'u UTC'ye de çevirmeniz gerekiyor ('new DateTime (2010, 1, 1) .ToUniversalTime()'). Büyük sorun, bunun için gün ışığından yararlanma konusunda endişelenmeniz gerekebilir. –
protected void Page_Load(object sender, EventArgs e)
{
SecondsSinceNow(new DateTime(2010, 1, 1, 0, 0, 0));
}
private double SecondsSinceNow(DateTime compareDate)
{
System.TimeSpan timeDifference = DateTime.Now.Subtract(compareDate);
return timeDifference.TotalSeconds;
}
DateTime t1 = DateTime.Now;
DateTime p = new DateTime(2010, 1, 1);
TimeSpan d = t1 - p;
long s = (long)d.TotalSeconds;
MessageBox.Show(s.ToString());
Gerçekten kimin 2010-Jan-01 kullanıyor ve olsun ya da olmasın Gün ışığından yararlanma hesap isteyen meselesi.
Difference with Daylight Savings: 105.15:44:09.7003571 Difference without Daylight Savings: 105.14:44:09.7003571 UTC Difference: 105.20:44:09.7003571
//I'm currently in Central Daylight Time (Houston, Texas)
DateTime jan1 = new DateTime(2010, 1, 1);
//days since Jan1 + time since midnight
TimeSpan differenceWithDaylightSavings = DateTime.Now - jan1;
//one hour less than above (we "skipped" those 60 minutes about a month ago)
TimeSpan differenceWithoutDaylightSavings = (DateTime.UtcNow - jan1.ToUniversalTime());
//difference for those using UTC and 2010-Jan-01 12:00:00 AM UTC as their starting point
// (today it's 5 hours longer than differenceWithDaylightSavings)
TimeSpan utcDifference = (DateTime.UtcNow - new DateTime(2010, 1, 1));
saniye ZamanGeçişi nesnesi kapalı
TotalSeconds özelliğini kullanın almak için.
@Psytronic için farketmez. Sonra MessageBox.Show ((DateTime.Now - yeni DateTime (2010, 01, 01)). TotalSeconds.ToString()); 'her türlü oy almalıdır. –
ViewData ["counter-multiplier"] = (DateTime.Now - yeni DateTime (2010, 01, 01)) TotalSeconds.ToString(); – craigmoliver