计算时间跨度

 1, C#版

      /// <summary>
       /// LanguageType=1 -->English  ;   2 --> Chinese
       /// </summary>
       /// <param name="DateTime1"></param>
       /// <param name="DateTime2"></param>
       /// <param name="iLanguageType"></param>
       /// <returns></returns>
       public static string TimeDuration(DateTime DateTime1, DateTime DateTime2, int iLanguageType = 1)
       {
           string dateDiff = "";
           TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);
           TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);
           TimeSpan ts = ts1.Subtract(ts2).Duration();

           //if(iLanguageType==2)
           //     dateDiff = ts.Days.ToString() + "天" + ts.Hours.ToString() + "小时" + ts.Minutes.ToString() + "分钟" + ts.Seconds.ToString() + "秒";
           //else if (iLanguageType == 1)
           //     dateDiff = ts.Days.ToString() + "Days" + ts.Hours.ToString() + "Hours" + ts.Minutes.ToString() + "Minutes" + ts.Seconds.ToString() + "Seconds";

           if (iLanguageType == 2)
           {
               if (ts.Days > 0)
                   dateDiff += ts.Days.ToString() + " 天 ";
               if (ts.Hours > 0)
                   dateDiff += ts.Hours.ToString() + " 小时 ";
               if (ts.Minutes > 0)
                   dateDiff += ts.Minutes.ToString() + " 分钟 ";
               if (ts.Seconds > 0)
                   dateDiff += ts.Seconds.ToString() + " 秒 ";
               if (ts.Milliseconds > 0)
                   dateDiff += ts.Milliseconds.ToString() + " 毫秒 ";
           }
           else if (iLanguageType == 1)
           {
               if (ts.Days > 0)
                   dateDiff += ts.Days.ToString() + " Days ";
               if (ts.Hours > 0)
                   dateDiff += ts.Hours.ToString() + " Hours ";
               if (ts.Minutes > 0)
                   dateDiff += ts.Minutes.ToString() + " Minutes ";
               if (ts.Seconds > 0)
                   dateDiff += ts.Seconds.ToString() + " Seconds ";
               if (ts.Milliseconds > 0)
                   dateDiff += ts.Milliseconds.ToString() + " Miniseconds ";
           }

           return dateDiff;
       }

2,VB.NET版

    '/// <summary>  
    ' /// LanguageType=1 -->English  ;   2 --> Chinese  
    ' /// </summary>  
    ' /// <param name="DateTime1"></param>  
    ' /// <param name="DateTime2"></param>  
    ' /// <param name="iLanguageType"></param>  
    ' /// <returns></returns>  
    Public Function TimeDuration(ByVal DateTime1 As DateTime, ByVal DateTime2 As DateTime, Optional ByVal iLanguageType As Integer = 1) As String

        Dim dateDiffResult As String = ""
        Dim ts1 As TimeSpan = New TimeSpan(DateTime1.Ticks)
        Dim ts2 As TimeSpan = New TimeSpan(DateTime2.Ticks)
        Dim ts As TimeSpan = ts1.Subtract(ts2).Duration()

        ' //if(iLanguageType==2)  
        ' //     dateDiff = ts.Days.ToString() + "天" + ts.Hours.ToString() + "小时" + ts.Minutes.ToString() + "分钟" + ts.Seconds.ToString() + "秒";  
        ' //else if (iLanguageType == 1)  
        ' //     dateDiff = ts.Days.ToString() + "Days" + ts.Hours.ToString() + "Hours" + ts.Minutes.ToString() + "Minutes" + ts.Seconds.ToString() + "Seconds";  

        If (iLanguageType = 2) Then

            If (ts.Days > 0) Then
                dateDiffResult += ts.Days.ToString() + " 天 "
            End If

            If (ts.Hours > 0) Then
                dateDiffResult += ts.Hours.ToString() + " 小时 "
            End If

            If (ts.Minutes > 0) Then
                dateDiffResult += ts.Minutes.ToString() + " 分钟 "
            End If

            If (ts.Seconds > 0) Then
                dateDiffResult += ts.Seconds.ToString() + " 秒 "
            End If

            If (ts.Milliseconds > 0) Then
                dateDiffResult += ts.Milliseconds.ToString() + " 毫秒 "
            End If
        ElseIf (iLanguageType = 1) Then

            If (ts.Days > 0) Then
                dateDiffResult += ts.Days.ToString() + " Days "
            End If

            If (ts.Hours > 0) Then
                dateDiffResult += ts.Hours.ToString() + " Hours "
            End If

            If (ts.Minutes > 0) Then
                dateDiffResult += ts.Minutes.ToString() + " Minutes "
            End If

            If (ts.Seconds > 0) Then
                dateDiffResult += ts.Seconds.ToString() + " Seconds "
            End If

            If (ts.Milliseconds > 0) Then
                dateDiffResult += ts.Milliseconds.ToString() + " Miniseconds "
            End If
        End If

        Return dateDiffResult
    End Function
 


http://www.cnblogs.com/qiuweiguo/archive/2011/08/03/2126404.html

http://www.blogjava.net/AndyZhang/archive/2012/05/02/377157.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值