datediff ("s", Time1,Time2)

解决方案 »

  1.   

    可以用DateTime.Now,
    在做一件事之前用DateTime time1=DateTime.Now,做完后再用一次DateTime time2=DateTime.Now,然后time1,time2化成相同时间单位相减,就得到了相隔的秒数。
      

  2.   

    "然后time1,time2化成相同时间单位相"
    请问如何转换??
      

  3.   

    int k=time1.Hour*60*1000000+time1.Minute*60*1000+time1.Second*1000+time1.Millisecond;
    int j=time2.Hour*60*1000000+time2.Minute*60*1000+time2.Second*1000+time2.Millisecond;
    int l=j-k;
    Console.WriteLine("result={0}",l);
      

  4.   

    自己解出来了!^_^
    ========================================================
    DateTime t1 = DateTime.Now;
    DateTime t2 = DateTime.Now.AddHours(-1);
    TimeSpan ts = t1-t2;
    MessageBox.Show (Convert.ToDouble(ts.TotalSeconds).ToString());
      

  5.   

    刚得到一个C# DateDiff函数,与大家共享
    ==========================================================
    private double DateDiff(string howtocompare, System.DateTime startDate, System.DateTime endDate) 

    double diff=0; 
    try 

    System.TimeSpan TS = new System.TimeSpan(startDate.Ticks-endDate.Ticks); 
    #region converstion options 
    switch (howtocompare.ToLower()) 

    case "m": 
    diff = Convert.ToDouble(TS.TotalMinutes); 
    break; 
    case "s": 
    diff = Convert.ToDouble(TS.TotalSeconds); 
    break; 
    case "t": 
    diff = Convert.ToDouble(TS.Ticks); 
    break; 
    case "mm": 
    diff = Convert.ToDouble(TS.TotalMilliseconds); 
    break; 
    case "yyyy": 
    diff = Convert.ToDouble(TS.TotalDays/365); 
    break; 
    case "q": 
    diff = Convert.ToDouble((TS.TotalDays/365)/4); 
    break; 
    default: 
    //d 
    diff = Convert.ToDouble(TS.TotalDays); 
    break; 

    #endregion 

    catch(Exception eee) 

    diff = -1; 

    return diff;