.net学习总结(1)之日期函数,数字转化

1.在.net 中静态类的引用方法:
   直接把类放在 App_Code文件夹中,在程序中引用时直接:类名.方法(),不需要实例化,否则会报错。
2.字符型转化成数字的方法:
  (1)  Convert.ToInt32(string)  (2) (Int) x
3. 测试输入的是否为数字
   
  1. public static bool IsNumeric(string str)
  2.     {
  3.         if (str == null || str.Length == 0)
  4.             return true ;
  5.         foreach (char c in str)
  6.         {
  7.             if (!Char.IsNumber(c))
  8.             {
  9.                 return true ;
  10.             }
  11.         }
  12.         return false ;
  13.     } 
4. Sql 语句,是字符型和日期型时,要加“”,否则会报错
   例如:
   string sqll = "select [pe-ID] from [person] where [pe-name]=" + pename + ";// 错误语句
   string sqll = "select [pe-ID] from [person] where [pe-name]='" + pename + "'";//正确语句
   须加 '。
5. 把日期拆分年、月、日
   Year=DateTime.Now.Year.ToString();
   month=DateTime.Now.Month.ToString();
   Day=DateTime.Now.Day.ToString();
6, 计算两个日期相差天数,年数,月数
  1. private static int nian(string i, string j)
  2.     {
  3.         TimeSpan ts = Convert.ToDateTime(i) - Convert.ToDateTime(j);//i,j为日期
  4.         //注意日期的格式为YYYY-MM-DD// DateTime.Now.ToString("yyyy-MM-dd")转化
  5.         int zongtian = Convert.ToInt32(ts.Days.ToString());//获取总天数
  6.         int nian;
  7.         if ((zongtian%365)==0)
  8.         nian =zongtian/365;//计算总年数
  9.         else 
  10.             nian =zongtian /365 +1;
  11.         int yue;
  12.         if ((zongtian%30)==0)
  13.         yue =zongtian/365;//计算总年数
  14.         else 
  15.             yue =zongtian /365 +1
  16.     } 
另外贴出日期常用的操作   
 
  1. /// <summary>
  2.         /// 返回相差的秒数,两个日期之间的值
  3.         /// </summary>
  4.         /// <param name="dateTime1">指定的第一个日期</param>
  5.         /// <param name="dateTime2">指定的第二个日期</param>
  6.         /// <param name="Sec">指定六十秒中什么时候开始计算,一般为零</param>
  7.         /// <returns></returns>
  8.         public int StrDateDiffSeconds(DateTime dateTime1,DateTime dateTime2, int Sec)
  9.         {
  10.             TimeSpan ts = dateTime1 - dateTime2.AddSeconds(Sec);
  11.             if (ts.TotalSeconds > int.MaxValue)
  12.             {
  13.                 return int.MaxValue;
  14.             }
  15.             else if (ts.TotalSeconds < int.MinValue)
  16.             {
  17.                 return int.MinValue;
  18.             }
  19.             return (int)ts.TotalSeconds;
  20.         }
  21.         /// <summary>
  22.         /// 返回相差的分钟数,两个日期之间的值
  23.         /// </summary>
  24.         /// <param name="dateTime1">指定的第一个日期</param>
  25.         /// <param name="dateTime2">指定的第二个日期</param>
  26.         /// <param name="minutes"></param>
  27.         /// <returns></returns>
  28.         public int StrDateDiffMinutes(DateTime dateTime1, DateTime dateTime2, int minutes)
  29.         {
  30.             if (dateTime2 == null || dateTime1 == null)
  31.                 return 1;
  32.             TimeSpan ts =dateTime1 - dateTime2.AddMinutes(minutes);
  33.             if (ts.TotalMinutes > int.MaxValue)
  34.             {
  35.                 return int.MaxValue;
  36.             }
  37.             else if (ts.TotalMinutes < int.MinValue)
  38.             {
  39.                 return int.MinValue;
  40.             }
  41.             return (int)ts.TotalMinutes;
  42.         }
  43.          //<summary>
  44.          //返回相差的小时数,两个日期之间的值
  45.          /// </summary>
  46.          /// <param name="dateTime1">指定的第一个日期</param>
  47.          /// <param name="dateTime2">指定的第二个日期</param>
  48.          ///<param name="hours">开始的小时,一般为零点</param>
  49.          ///<returns></returns>
  50.         public int StrDateDiffHours(DateTime dateTime1, DateTime dateTime2, int hours)
  51.         {
  52.             if (dateTime1 == null || dateTime2 == null)
  53.                 return 1;
  54.             TimeSpan ts = dateTime1 - dateTime2.AddHours(hours);
  55.             if (ts.TotalHours > int.MaxValue)
  56.             {
  57.                 return int.MaxValue;
  58.             }
  59.             else if (ts.TotalHours < int.MinValue)
  60.             {
  61.                 return int.MinValue;
  62.             }
  63.             return (int)ts.TotalHours;
  64.         }
  65.         /// <summary>
  66.         /// 计算两个日期的时间间隔的天数
  67.         /// </summary>
  68.         /// <param name="DateTime1">第一个日期和时间</param>
  69.         /// <param name="DateTime2">第二个日期和时间</param>
  70.         /// <returns></returns>
  71.         public string DateDiff(DateTime DateTime1, DateTime DateTime2)
  72.         {
  73.             string dateDiff = null;
  74.             TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);
  75.             TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);
  76.             TimeSpan ts = ts1.Subtract(ts2).Duration();
  77.             dateDiff = ts.Days.ToString();// +"天";
  78.                 //+ ts.Hours.ToString() + "小时"
  79.                 //+ ts.Minutes.ToString() + "分钟"
  80.                 //+ ts.Seconds.ToString() + "秒";
  81.             return dateDiff;
  82.         }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值