C# 日期处理
public class ConvertToDatetime {/// <summary> /// 将日期格式转换为数字格式,如2008-1-1 变为20080101 /// </summary> /// <param name="date"></param> /// <returns></returns> public static string ConvertDateToNumber(DateTime date) { try { string number = date.Year.ToString(); int month = date.Month; int day = date.Day; if (month < 10) { number = number + "0" + month.ToString().Trim(); } else { number = number + month.ToString().Trim(); } if (day < 10) { number = number + "0" + day.ToString().Trim(); } else { number = number + day.ToString().Trim(); } return number; } catch { return String.Empty; } } public static string ConvertNumberToDate(string number) { if (string.IsNullOrEmpty(number) || number.Length != 8) return string.Empty; number = number.Substring(0, 4) + "-" + number.Substring(4, 2) + "-" + number.Substring(6); return number; } /// <summary> /// 把数字转换为时间格式,如 090020=09:20 /// </summary> /// <param name="number"></param> /// <returns></returns> public static string ConvertTimeToDate(string number) { if (number.Length == 0) return string.Empty; number = number.Substring(0, 2) + ":" + number.Substring(4, 2); return number; } public static string GetStartDateString(DateTime date) { string startDateString = ConvertDateToNumber(date); startDateString = startDateString.Substring(0, 6) + "01"; return startDateString; } public static string GetStartDateStringN(DateTime date) { string startDateString = ConvertDateToNumber(date); return startDateString; } /// <summary> /// 获取当月第一天 /// </summary> /// <returns></returns> public static string GetCurrentMonthFirstDay() { DateTime dt = DateTime.Now; string month = dt.Month.ToString().Length < 2 ? "0" + dt.Month.ToString() : dt.Month.ToString(); return dt.Year + "-" + month + "-" + "01"; } /// <summary> /// 获取当月第一天 /// </summary> /// <returns></returns> public static string GetCurrentMonthFirstDay(DateTime dt) { string month = dt.Month.ToString().Length < 2 ? "0" + dt.Month.ToString() : dt.Month.ToString(); return dt.Year + "-" + month + "-" + "01"; } /// <summary> /// 获取前几个月第一天 /// </summary> /// <returns></returns> public static string GetLastMonthFirstDay(int num) { int curyear = DateTime.Now.Year; int curMonth = DateTime.Now.Month; int lastMonth, lastYear; if (curMonth - num <= 0) { lastMonth = 12 + (curMonth - num); lastYear = curyear - 1; return lastYear + "-" + lastMonth + "-01"; } else { lastMonth = curMonth - num; return curyear + "-" + lastMonth + "-01"; } } /// <summary> /// 获取当月 /// </summary> /// <returns></returns> public static string GetCurrentMonth() { DateTime dt = DateTime.Now; string month = dt.Month.ToString().Length < 2 ? "0" + dt.Month.ToString() : dt.Month.ToString(); return dt.Year + "-" + month; } /// <summary> /// 获取当月最后一天 /// </summary> /// <returns></returns> public static string GetCurrentMonthLastDay() { DateTime dt = DateTime.Now; string str = GetEndDateString(dt); return str.Substring(0, 4) + "-" + str.Substring(4, 2) + "-" + str.Substring(6, 2); } /// <summary> /// 获取当月最后一天 /// </summary> /// <returns></returns> public static string GetCurrentMonthLastDay(DateTime dt) { string str = GetEndDateString(dt); return str.Substring(0, 4) + "-" + str.Substring(4, 2) + "-" + str.Substring(6, 2); } public static string GetEndDateString(DateTime date) { string endDateString = ConvertDateToNumber(date); string day = ""; if (date.Month == 1 || date.Month == 3 || date.Month == 5 || date.Month == 7 || date.Month == 8 || date.Month == 10 || date.Month == 12) { day = "31"; } else { if (date.Month == 4 || date.Month == 6 || date.Month == 9 || date.Month == 11) { day = "30"; } else { if ((date.Year % 4 == 0 && date.Year % 100 != 0) || date.Year % 400 == 0) { day = "29"; } else { day = "28"; } } } endDateString = endDateString.Substring(0, 6).Trim() + day.Trim(); return endDateString; } //去掉了截取字符串 public static string GetEndDateStringN(DateTime date) { string endDateString = ConvertDateToNumber(date); return endDateString; } /// <summary> /// 返回年月日格式 /// </summary> /// <param name="date"></param> /// <returns></returns> public static string ConvertDateToChineseDate(DateTime date) { return (date.Year.ToString() + "年" + date.Month.ToString() + "月" + date.Day.ToString().Trim() + "日"); } /// <summary> /// 时间为空时返回 空 /// </summary> /// <param name="Time"></param> /// <returns></returns> public static string GetDateTime(string Time) { if (Time.ToString() == "") { return ""; } return ConvertDateToNumber(Convert.ToDateTime(Time)); } /// <summary> /// 时钟控件初始化开始日期值 /// </summary> /// <returns></returns> public static string InitStartDateString() { return (string.Format("{0}-01-01", DateTime.Now.Year.ToString())); } /// <summary> /// 时钟控件初始化结束日期值 /// </summary> /// <returns></returns> public static string InitEndDateString() { return (string.Format("{0}-12-31", DateTime.Now.Year.ToString())); } /// <summary> /// 最小日期 /// </summary> public static string MinNumDate { get { return "19000101"; } } /// <summary> /// 最大日期 /// </summary> public static string MaxNumDate { get { return "99991231"; } } /// <summary> /// 当前日期 /// </summary> /// <returns></returns> public static string InitCurrentDateString() { return (DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-" + DateTime.Now.Day.ToString()); } }
public class ConvertToDatetime
{/// <summary>
/// 将日期格式转换为数字格式,如2008-1-1 变为20080101
/// </summary>
/// <param name="date"></param>
/// <returns></returns>
public static string ConvertDateToNumber(DateTime date)
{
try
{
string number = date.Year.ToString();
int month = date.Month;
int day = date.Day;
if (month < 10)
{
number = number + "0" + month.ToString().Trim();
}
else
{
number = number + month.ToString().Trim();
}
if (day < 10)
{
number = number + "0" + day.ToString().Trim();
}
else
{
number = number + day.ToString().Trim();
}
return number;
}
catch
{
return String.Empty;
}
}
public static string ConvertNumberToDate(string number)
{
if (string.IsNullOrEmpty(number) || number.Length != 8) return string.Empty;
number = number.Substring(0, 4) + "-" + number.Substring(4, 2) + "-" + number.Substring(6);
return number;
}
/// <summary>
/// 把数字转换为时间格式,如 090020=09:20
/// </summary>
/// <param name="number"></param>
/// <returns></returns>
public static string ConvertTimeToDate(string number)
{
if (number.Length == 0) return string.Empty;
number = number.Substring(0, 2) + ":" + number.Substring(4, 2);
return number;
}
public static string GetStartDateString(DateTime date)
{
string startDateString = ConvertDateToNumber(date);
startDateString = startDateString.Substring(0, 6) + "01";
return startDateString;
}
public static string GetStartDateStringN(DateTime date)
{
string startDateString = ConvertDateToNumber(date);
return startDateString;
}
/// <summary>
/// 获取当月第一天
/// </summary>
/// <returns></returns>
public static string GetCurrentMonthFirstDay()
{
DateTime dt = DateTime.Now;
string month = dt.Month.ToString().Length < 2 ? "0" + dt.Month.ToString() : dt.Month.ToString();
return dt.Year + "-" + month + "-" + "01";
}
/// <summary>
/// 获取当月第一天
/// </summary>
/// <returns></returns>
public static string GetCurrentMonthFirstDay(DateTime dt)
{
string month = dt.Month.ToString().Length < 2 ? "0" + dt.Month.ToString() : dt.Month.ToString();
return dt.Year + "-" + month + "-" + "01";
}
/// <summary>
/// 获取前几个月第一天
/// </summary>
/// <returns></returns>
public static string GetLastMonthFirstDay(int num)
{
int curyear = DateTime.Now.Year;
int curMonth = DateTime.Now.Month;
int lastMonth, lastYear;
if (curMonth - num <= 0)
{
lastMonth = 12 + (curMonth - num);
lastYear = curyear - 1;
return lastYear + "-" + lastMonth + "-01";
}
else
{
lastMonth = curMonth - num;
return curyear + "-" + lastMonth + "-01";
}
}
/// <summary>
/// 获取当月
/// </summary>
/// <returns></returns>
public static string GetCurrentMonth()
{
DateTime dt = DateTime.Now;
string month = dt.Month.ToString().Length < 2 ? "0" + dt.Month.ToString() : dt.Month.ToString();
return dt.Year + "-" + month;
}
/// <summary>
/// 获取当月最后一天
/// </summary>
/// <returns></returns>
public static string GetCurrentMonthLastDay()
{
DateTime dt = DateTime.Now;
string str = GetEndDateString(dt);
return str.Substring(0, 4) + "-" + str.Substring(4, 2) + "-" + str.Substring(6, 2);
}
/// <summary>
/// 获取当月最后一天
/// </summary>
/// <returns></returns>
public static string GetCurrentMonthLastDay(DateTime dt)
{
string str = GetEndDateString(dt);
return str.Substring(0, 4) + "-" + str.Substring(4, 2) + "-" + str.Substring(6, 2);
}
public static string GetEndDateString(DateTime date)
{
string endDateString = ConvertDateToNumber(date);
string day = "";
if (date.Month == 1 || date.Month == 3 || date.Month == 5 || date.Month == 7 || date.Month == 8 || date.Month == 10 || date.Month == 12)
{
day = "31";
}
else
{
if (date.Month == 4 || date.Month == 6 || date.Month == 9 || date.Month == 11)
{
day = "30";
}
else
{
if ((date.Year % 4 == 0 && date.Year % 100 != 0) || date.Year % 400 == 0)
{
day = "29";
}
else
{
day = "28";
}
}
}
endDateString = endDateString.Substring(0, 6).Trim() + day.Trim();
return endDateString;
}
//去掉了截取字符串
public static string GetEndDateStringN(DateTime date)
{
string endDateString = ConvertDateToNumber(date);
return endDateString;
}
/// <summary>
/// 返回年月日格式
/// </summary>
/// <param name="date"></param>
/// <returns></returns>
public static string ConvertDateToChineseDate(DateTime date)
{
return (date.Year.ToString() + "年" + date.Month.ToString() + "月" + date.Day.ToString().Trim() + "日");
}
/// <summary>
/// 时间为空时返回 空
/// </summary>
/// <param name="Time"></param>
/// <returns></returns>
public static string GetDateTime(string Time)
{
if (Time.ToString() == "")
{
return "";
}
return ConvertDateToNumber(Convert.ToDateTime(Time));
}
/// <summary>
/// 时钟控件初始化开始日期值
/// </summary>
/// <returns></returns>
public static string InitStartDateString()
{
return (string.Format("{0}-01-01", DateTime.Now.Year.ToString()));
}
/// <summary>
/// 时钟控件初始化结束日期值
/// </summary>
/// <returns></returns>
public static string InitEndDateString()
{
return (string.Format("{0}-12-31", DateTime.Now.Year.ToString()));
}
/// <summary>
/// 最小日期
/// </summary>
public static string MinNumDate
{
get
{
return "19000101";
}
}
/// <summary>
/// 最大日期
/// </summary>
public static string MaxNumDate
{
get
{
return "99991231";
}
}
/// <summary>
/// 当前日期
/// </summary>
/// <returns></returns>
public static string InitCurrentDateString()
{
return (DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-" + DateTime.Now.Day.ToString());
}
}

浙公网安备 33010602011771号