最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#驗(yàn)證給定字符串形式日期是否合法的方法

 更新時(shí)間:2015年03月27日 11:13:40   作者:feige  
這篇文章主要介紹了C#驗(yàn)證給定字符串形式日期是否合法的方法,實(shí)例分析了C#針對(duì)字符串及日期的操作技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了C#驗(yàn)證給定字符串形式日期是否合法的方法。分享給大家供大家參考。具體分析如下:

這段C#代碼用于驗(yàn)證日期的有效性,對(duì)于用戶輸入的不規(guī)則日期也作了簡(jiǎn)單處理,比如用戶輸入了“今天”,則代碼會(huì)認(rèn)為用戶要返回的是今天的日期,另外可以對(duì)純數(shù)字的日期進(jìn)行解析,比如:20130906

/// <summary>
/// 驗(yàn)證日期是否合法,對(duì)不規(guī)則的作了簡(jiǎn)單處理
/// </summary>
/// <param name="date">日期</param>
public static bool IsDate(ref string date)
{
  //如果為空,認(rèn)為驗(yàn)證合格
  if (IsNullOrEmpty(date))
  {
 return true;
  }
  //清除要驗(yàn)證字符串中的空格
  date = date.Trim();
  //替換\
  date = date.Replace(@"\", "-");
  //替換/
  date = date.Replace(@"/", "-");
  //如果查找到漢字"今",則認(rèn)為是當(dāng)前日期
  if (date.IndexOf("今") != -1)
  {
 date = DateTime.Now.ToString();
  }
  try
  {
 //用轉(zhuǎn)換測(cè)試是否為規(guī)則的日期字符
 date = Convert.ToDateTime(date).ToString("d");
 return true;
  }
  catch
  {
 //如果日期字符串中存在非數(shù)字,則返回false
 if (!IsInt(date))
 {
   return false;
 }
 #region 對(duì)純數(shù)字進(jìn)行解析
 //對(duì)8位純數(shù)字進(jìn)行解析
 if (date.Length == 8)
 {
   //獲取年月日
   string year = date.Substring(0, 4);
   string month = date.Substring(4, 2);
   string day = date.Substring(6, 2);
   //驗(yàn)證合法性
   if (Convert.ToInt32(year) < 1900 || Convert.ToInt32(year) > 2100)
   {
 return false;
   }
   if (Convert.ToInt32(month) > 12 || Convert.ToInt32(day) > 31)
   {
 return false;
   }
   //拼接日期
   date = Convert.ToDateTime(year + "-" + month + "-" + day).ToString("d");
   return true;
 }
 //對(duì)6位純數(shù)字進(jìn)行解析
 if (date.Length == 6)
 {
   //獲取年月
   string year = date.Substring(0, 4);
   string month = date.Substring(4, 2);
   //驗(yàn)證合法性
   if (Convert.ToInt32(year) < 1900 || Convert.ToInt32(year) > 2100)
   {
 return false;
   }
   if (Convert.ToInt32(month) > 12)
   {
 return false;
   }
   //拼接日期
   date = Convert.ToDateTime(year + "-" + month).ToString("d");
   return true;
 }
 //對(duì)5位純數(shù)字進(jìn)行解析
 if (date.Length == 5)
 {
   //獲取年月
   string year = date.Substring(0, 4);
   string month = date.Substring(4, 1);
   //驗(yàn)證合法性
   if (Convert.ToInt32(year) < 1900 || Convert.ToInt32(year) > 2100)
   {
 return false;
   }
   //拼接日期
   date = year + "-" + month;
   return true;
 }
 //對(duì)4位純數(shù)字進(jìn)行解析
 if (date.Length == 4)
 {
   //獲取年
   string year = date.Substring(0, 4);
   //驗(yàn)證合法性
   if (Convert.ToInt32(year) < 1900 || Convert.ToInt32(year) > 2100)
   {
 return false;
   }
   //拼接日期
   date = Convert.ToDateTime(year).ToString("d");
   return true;
 }
 #endregion
 return false;
  }
}

希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

攀枝花市| 宝鸡市| 原平市| 尉犁县| 博白县| 吴旗县| 青铜峡市| 自贡市| 札达县| 卓资县| 锡林郭勒盟| 丘北县| 新民市| 神池县| 射阳县| 尤溪县| 攀枝花市| 金坛市| 星子县| 宜州市| 昭平县| 嘉祥县| 淅川县| 鹤峰县| 新泰市| 宁安市| 呼和浩特市| 太湖县| 咸丰县| 灵川县| 海阳市| 富阳市| 高尔夫| 柘城县| 肃宁县| 丘北县| 巴彦县| 腾冲县| 绍兴县| 昆山市| 普宁市|