我做的时候有同样的结果1338161400
DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0);
DateTime date = DateTime.Parse(@"28/05/12 01:30");
TimeSpan diff = date.ToUniversalTime() - origin;
Console.WriteLine( (Math.Floor(diff.TotalSeconds)).ToString());
Run Code Online (Sandbox Code Playgroud)
以及当我使用date.AddHours(-4)时:
DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0);
DateTime date = DateTime.Parse(@"28/05/12 01:30");
date.AddHours(-4);
TimeSpan diff = date.ToUniversalTime() - origin;
Console.WriteLine( (Math.Floor(diff.TotalSeconds)).ToString());
Run Code Online (Sandbox Code Playgroud)
我试着像http://www.mbari.org/staff/rich/utccalc.htm那样得到1338168600
更新:
谢谢,我改变了
DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0);
DateTime date = DateTime.Parse(@"28/05/2012 01:30");
date = date.AddHours(-4);
date = date.ToUniversalTime();
TimeSpan diff = date - origin;
Console.WriteLine((Math.Floor(diff.TotalSeconds)).ToString());
Run Code Online (Sandbox Code Playgroud)
但我得到1338147000仍然不是1338168600
Slu*_*art 60
日期是不可变对象,即它们在创建后无法修改.DateTime.AddHours返回一个新的DateTime实例,该实例向后移动4小时,但不会修改"date".
使用:
DateTime newDate = date.AddHours(-4);
Run Code Online (Sandbox Code Playgroud)
AddHours返回一个新 DateTime对象,它是将小时数添加到原始对象上的结果.原件保持不变.
因此,你想要date = date.AddHours(-4);而不是只是date.AddHours(-4);
| 归档时间: |
|
| 查看次数: |
24862 次 |
| 最近记录: |