- protected string GetDiffTime(DateTime beginTime, DateTime endTime)
- {
- string strResout = "{0}{1}前";
- //获得2时间的时间间隔秒计算
- TimeSpan span = endTime - beginTime;
- int iTatol = Convert.ToInt32(span.TotalSeconds);
- int iMinutes = 1 * 60;
- int iHours = iMinutes * 60;
- int iDay = iHours * 24;
- int iMonth = iDay * 30;
- int iYear = iMonth * 12;
- if (iTatol>iYear)
- {
- return string.Format(strResout, iTatol / iYear,"年");
- }
- else if (iTatol > iMonth)
- {
- return string.Format(strResout, iTatol / iMonth, "月");
- }
- else if (iTatol > iDay)
- {
- return string.Format(strResout, iTatol / iDay, "天");
- }
- else if (iTatol > iHours)
- {
- return string.Format(strResout, iTatol / iHours, "小时");
- }
- else if (iTatol > iMinutes)
- {
- return string.Format(strResout, iTatol / iMinutes, "分钟");
- }
- else
- {
- return string.Format(strResout, iTatol, "秒");
- }
- }
调用
- Program program = new Program();
- List<DateTime> dateList = new List<DateTime>();
- DateTime tmpDate = DateTime.Parse("2009-05-12 23:01");
- dateList.Add(tmpDate.AddSeconds(-11));
- dateList.Add(tmpDate.AddSeconds(-110));
- dateList.Add(tmpDate.AddSeconds(-1100));
- dateList.Add(tmpDate.AddSeconds(-11000));
- dateList.Add(tmpDate.AddSeconds(-110000));
- dateList.Add(tmpDate.AddSeconds(-1100000));
- dateList.Add(tmpDate.AddSeconds(-11000000));
- dateList.Add(tmpDate.AddSeconds(-110000000));
- foreach (DateTime beginTime in dateList)
- {
- string strDiff = program.GetDiffTime(beginTime, DateTime.Now);
- Console.WriteLine(strDiff);
- }
- Console.ReadLine();
显示结果: