C#中如何计算时间差?

C#中怎么计算两时间相差多少。计算2个时间之间的差,可以计算到时分秒!

<1>
label1.Text = "2004-1-1 15:36:05";
label2.Text = "2004-3-1 20:16:35";
DateTime d1 =new DateTime(2004,1,1,15,36,05);
DateTime d2 =new DateTime(2004,3,1,20,16,35);

TimeSpan d3 = d2.Subtract(d1);

label3.Text = "相差:"
+d3.Days.ToString()+"天"
+d3.Hours.ToString()+"小时"
+d3.Minutes.ToString()+"分钟"
+d3.Seconds.ToString()+"秒";

结果如图:
[img]http://image.360doc.com/DownloadImg/11586/692016_1.jpg[/img]


<2>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DateTime dt1 = Convert.ToDateTime("2009-07-31 00:00:00");
DateTime dt2 = Convert.ToDateTime("2009-08-02 00:00:00");
this.Label1.Text = this.DateDiff(dt1,dt2);
}
}
private string DateDiff(DateTime DateTime1, DateTime DateTime2)
{
string dateDiff = null;
try
{
TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);
TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);
TimeSpan ts = ts1.Subtract(ts2).Duration();
dateDiff = ts.Days.ToString() + "天" + ts.Hours.ToString() + "小时" + ts.Minutes.ToString() + "分钟" + ts.Seconds.ToString() + "秒";
}
catch
{ }
return dateDiff;
}

<3>
string st1 = "14:16";
string st2 = "14:14";
DateTime dt1 = Convert.ToDateTime(st1);
DateTime dt2 = Convert.ToDateTime(st2);

int result = DateTime.Compare(dt1, dt2);
如果st1的时间大于st2 , result = 1
如果相等就等于0,
如果小于就是-1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值