asp.net

.net对时间操作的类

2010-10-23

DateTime .ToString("yyyy年MM月dd日 hh时mm分ss秒 dddd")
输出 2010年01月21日 12时04分00秒 星期四
可以选择自由转换,如:DateTime .ToString("yyyy-MM-dd") 输出:2010-01-21


/// <summary>
/// 对时间的操作(转换,截取等操作)
/// </summary>
public class TimeConvert
{
/// <summary>
/// 返回某年某月最后一天
/// </summary>
/// <param name="year">年份</param>
/// <param name="month">月份</param>
/// <returns>日</returns>
public static int GetMonthLastDate(int year, int month)
{
DateTime lastDay = new DateTime(year, month, new System.Globalization.GregorianCalendar().GetDaysInMonth(year, month));
int Day = lastDay.Day;
return Day;
}
/// <summary>
/// 把秒转换成分钟
/// </summary>
/// <returns></returns>
public static int SecondToMinute(int Second)
{
decimal mm = (decimal)((decimal)Second / (decimal)60);
return Convert.ToInt32(Math.Ceiling(mm));
}
/// <summary>
/// 返回时间差
/// </summary>
/// <param name="DateTime1">时间1(小)</param>
/// <param name="DateTime2">时间2(大)</param>
/// <returns></returns>
public static 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();
TimeSpan ts = DateTime2 - DateTime1;
if (ts.Days >= 1)
{
dateDiff = DateTime1.Month.ToString() + "月" + DateTime1.Day.ToString() + "日";
}
else
{
if (ts.Hours > 1)
{
dateDiff = ts.Hours.ToString() + "小时前";
}
else
{
dateDiff = ts.Minutes.ToString() + "分钟前";
}
}
}
catch
{ }
return dateDiff;
}
#region 时间
/// <summary>
/// <para>读取现在时间</para>
/// <para>参数:传递 1 : 2000年05月05日</para>
/// <para>参数:传递 2 : 2000/05/05</para>
/// <para>参数:传递 3 : 2000-05-05</para>
/// <para>参数:传递 4 : 00:00:00</para>
/// <para>参数:传递 5 : 2000年05月05日 00:00:00</para>
/// </summary>
/// <returns></returns>
public static string NowTime(int i)
{
string shijian = ""; ;
if (i == 1) { shijian = DateTime.Now.Year + "年" + DateTime.Now.Month + "月" + DateTime.Now.Day + "日"; }
else if (i == 2) { shijian = DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day + "/"; }
else if (i == 3) { shijian = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day + "-"; }
else if (i == 4) { shijian = DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second; }
else if (i == 5) { shijian = DateTime.Now.Year + "年" + DateTime.Now.Month + "月" + DateTime.Now.Day + "日" + " " + DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second; }
else { shijian = "读取错误"; }
return shijian;
}
#endregion
#region Time截取
/// <summary>
/// <para>时间截取</para>
/// <para>参数1:2009-5-5 </para>
/// <para>参数2:5-5</para>
/// <para>参数3:2009-5</para>
/// <para>参数4:2009年5月5日</para>
/// <para>参数5:5月5日</para>
/// <para>参数6:2009年5月</para>
/// <para>参数7:00:00:00</para>
/// <para>参数8:2009_5_5_00_00_00 "_ 为 str 参数"</para>
/// <para>4,5,6不需要填写str 随便填个数字即可</para>
/// </summary>
/// <param name="TimeString">要截取的时间</param>
/// <param name="i">参数</param>
/// <param name="str">年月后面要加的字符 比如:2009/2/12 str="/"</param>
/// <returns></returns>
public static string Time(DateTime TimeString, int i, string str)
{
string shijian = "";
if (i == 1)
{
shijian = TimeString.Year.ToString() + str + TimeString.Month.ToString() + str + TimeString.Day.ToString();
return shijian;
}
else if (i == 2)
{
shijian = TimeString.Month.ToString() + str + TimeString.Day.ToString();
return shijian;
}
else if (i == 3)
{
shijian = TimeString.Year.ToString() + str + TimeString.Month.ToString();
return shijian;
}
else if (i == 4)
{
shijian = TimeString.Year.ToString() + "年" + TimeString.Month.ToString() + "月" + TimeString.Day.ToString() + "日";
return shijian;
}
else if (i == 5)
{
shijian = TimeString.Month.ToString() + "月" + TimeString.Day.ToString() + "日";
return shijian;
}
else if (i == 6)
{
shijian = TimeString.Year.ToString() + "年" + TimeString.Month.ToString() + "月";
return shijian;
}
else if (i == 7)
{
shijian = TimeString.Hour.ToString() + str + TimeString.Minute.ToString() + str + TimeString.Second.ToString();
return shijian;
}
else if (i == 8)
{
shijian = TimeString.Year.ToString() + str + TimeString.Month.ToString() + str + TimeString.Day.ToString() + str + TimeString.Hour.ToString() + str + TimeString.Minute.ToString() + str + TimeString.Second.ToString();
return shijian;
}
else
{
return TimeString.ToShortDateString();
}
}
#endregion
}