pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

C#時間操作類分享

這篇文章主要為大家分享了C#時間操作類,秒轉換成分鐘,獲得兩個日期的間隔等,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C#時間操作類的具體代碼,供大家參考,具體內容如下


using System;

namespace DotNet.Utilities
{
 /// <summary>
 /// 時間類
 /// 1、SecondToMinute(int Second) 把秒轉換成分鐘
 /// </summary>
 public class TimeHelper
 {
  /// <summary>
  /// 將時間格式化成 年月日 的形式,如果時間為null,返回當前系統時間
  /// </summary>
  /// <param name="dt">年月日分隔符</param>
  /// <param name="Separator"></param>
  /// <returns></returns>
  public string GetFormatDate(DateTime dt, char Separator)
  {
   if (dt != null && !dt.Equals(DBNull.Value))
   {
    string tem = string.Format("yyyy{0}MM{1}dd", Separator, Separator);
    return dt.ToString(tem);
   }
   else
   {
    return GetFormatDate(DateTime.Now, Separator);
   }
  }
  /// <summary>
  /// 將時間格式化成 時分秒 的形式,如果時間為null,返回當前系統時間
  /// </summary>
  /// <param name="dt"></param>
  /// <param name="Separator"></param>
  /// <returns></returns>
  public string GetFormatTime(DateTime dt, char Separator) {
   if (dt != null && !dt.Equals(DBNull.Value))
   {
    string tem = string.Format("hh{0}mm{1}ss", Separator, Separator);
    return dt.ToString(tem);
   }
   else
   {
    return GetFormatDate(DateTime.Now, Separator);
   }
  }
  /// <summary>
  /// 把秒轉換成分鐘
  /// </summary>
  /// <returns></returns>
  public static int SecondToMinute(int Second)
  {
   decimal mm = (decimal)((decimal)Second / (decimal)60);
   return Convert.ToInt32(Math.Ceiling(mm));
  }

  #region 返回某年某月最后一天
  /// <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;
  }
  #endregion

  #region 返回時間差
  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;
  }
  #endregion

  #region 獲得兩個日期的間隔
  /// <summary>
  /// 獲得兩個日期的間隔
  /// </summary>
  /// <param name="DateTime1">日期一。</param>
  /// <param name="DateTime2">日期二。</param>
  /// <returns>日期間隔TimeSpan。</returns>
  public static TimeSpan DateDiff2(DateTime DateTime1, DateTime DateTime2)
  {
   TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);
   TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);
   TimeSpan ts = ts1.Subtract(ts2).Duration();
   return ts;
  }
  #endregion

  #region 格式化日期時間
  /// <summary>
  /// 格式化日期時間
  /// </summary>
  /// <param name="dateTime1">日期時間</param>
  /// <param name="dateMode">顯示模式</param>
  /// <returns>0-9種模式的日期</returns>
  public static string FormatDate(DateTime dateTime1, string dateMode)
  {
   switch (dateMode)
   {
    case "0":
     return dateTime1.ToString("yyyy-MM-dd");
    case "1":
     return dateTime1.ToString("yyyy-MM-dd HH:mm:ss");
    case "2":
     return dateTime1.ToString("yyyy/MM/dd");
    case "3":
     return dateTime1.ToString("yyyy年MM月dd日");
    case "4":
     return dateTime1.ToString("MM-dd");
    case "5":
     return dateTime1.ToString("MM/dd");
    case "6":
     return dateTime1.ToString("MM月dd日");
    case "7":
     return dateTime1.ToString("yyyy-MM");
    case "8":
     return dateTime1.ToString("yyyy/MM");
    case "9":
     return dateTime1.ToString("yyyy年MM月");
    default:
     return dateTime1.ToString();
   }
  }
  #endregion

  #region 得到隨機日期
  /// <summary>
  /// 得到隨機日期
  /// </summary>
  /// <param name="time1">起始日期</param>
  /// <param name="time2">結束日期</param>
  /// <returns>間隔日期之間的 隨機日期</returns>
  public static DateTime GetRandomTime(DateTime time1, DateTime time2)
  {
   Random random = new Random();
   DateTime minTime = new DateTime();
   DateTime maxTime = new DateTime();

   System.TimeSpan ts = new System.TimeSpan(time1.Ticks - time2.Ticks);

   // 獲取兩個時間相隔的秒數
   double dTotalSecontds = ts.TotalSeconds;
   int iTotalSecontds = 0;

   if (dTotalSecontds > System.Int32.MaxValue)
   {
    iTotalSecontds = System.Int32.MaxValue;
   }
   else if (dTotalSecontds < System.Int32.MinValue)
   {
    iTotalSecontds = System.Int32.MinValue;
   }
   else
   {
    iTotalSecontds = (int)dTotalSecontds;
   }


   if (iTotalSecontds > 0)
   {
    minTime = time2;
    maxTime = time1;
   }
   else if (iTotalSecontds < 0)
   {
    minTime = time1;
    maxTime = time2;
   }
   else
   {
    return time1;
   }

   int maxValue = iTotalSecontds;

   if (iTotalSecontds <= System.Int32.MinValue)
    maxValue = System.Int32.MinValue + 1;

   int i = random.Next(System.Math.Abs(maxValue));

   return minTime.AddSeconds(i);
  }
  #endregion
 }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持html5模板網。

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

這篇文章主要為大家詳細介紹了C# SendMail發送郵件功能實現,具有一定的參考價值,感興趣的小伙伴們可以參考一下
這篇文章主要介紹了C#實現的SQL備份與還原功能,結合具體實例形式分析了C#操作數據庫實現SQL備份與還原相關的控件、SQL連接、文件等操作技巧,需要的朋友可以參考下
這篇文章主要介紹了C#使用checkedListBox1控件鏈接數據庫的方法,結合具體實例形式分析了數據庫的創建及checkedListBox1控件連接數據庫的相關操作技巧,需要的朋友可以參考下
這篇文章主要介紹了C#實現的sqlserver操作類,結合具體實例形式分析了C#針對sqlserver數據庫進行連接、查詢、更新、關閉等相關操作技巧,需要的朋友可以參考下
這篇文章主要為大家詳細介紹了C#多線程數組模擬socket的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
這篇文章主要為大家詳細介紹了C#根據http和ftp圖片地址獲取對應圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下
主站蜘蛛池模板: 湖州织里童装_女童男童中大童装_款式多尺码全_织里儿童网【官网】-嘉兴嘉乐网络科技有限公司 | 郑州外墙清洗_郑州玻璃幕墙清洗_郑州开荒保洁-河南三恒清洗服务有限公司 | 学校用栓剂模,玻璃瓶轧盖钳,小型安瓿熔封机,实验室安瓿熔封机-长沙中亚制药设备有限公司 | 视频直播 -摄影摄像-视频拍摄-直播分发 | 六维力传感器_六分量力传感器_模腔压力传感器-南京数智微传感科技有限公司 | 仿清水混凝土_清水混凝土装修_施工_修饰_保护剂_修补_清水混凝土修复-德州忠岭建筑装饰工程 | 无线讲解器-导游讲解器-自助讲解器-分区讲解系统 品牌生产厂家[鹰米讲解-合肥市徽马信息科技有限公司] | crm客户关系管理系统,销售管理系统,crm系统,在线crm,移动crm系统 - 爱客crm | 冷却塔降噪隔音_冷却塔噪声治理_冷却塔噪音处理厂家-广东康明冷却塔降噪厂家 | 智能化的检漏仪_气密性测试仪_流量测试仪_流阻阻力测试仪_呼吸管快速检漏仪_连接器防水测试仪_车载镜头测试仪_奥图自动化科技 | 空气能采暖,热泵烘干机,空气源热水机组|设备|厂家,东莞高温热泵_正旭新能源 | 重庆监控_电子围栏设备安装公司_门禁停车场管理系统-劲浪科技公司 | TTCMS自助建站_网站建设_自助建站_免费网站_免费建站_天天向上旗下品牌 | 微水泥_硅藻泥_艺术涂料_艺术漆_艺术漆加盟-青岛泥之韵环保壁材 武汉EPS线条_EPS装饰线条_EPS构件_湖北博欧EPS线条厂家 | 百度网站优化,关键词排名,SEO优化-搜索引擎营销推广 | 橡胶膜片,夹布膜片,橡胶隔膜密封,泵阀设备密封膜片-衡水汉丰橡塑科技公司网站 | 山东锐智科电检测仪器有限公司_超声波测厚仪,涂层测厚仪,里氏硬度计,电火花检漏仪,地下管线探测仪 | 磷酸肌酸二钠盐,肌酐磷酰氯-沾化欣瑞康生物科技 | 冲锋衣滑雪服厂家-冲锋衣定制工厂-滑雪服加工厂-广东睿牛户外(S-GERT) | 酒水灌装机-白酒灌装机-酒精果酒酱油醋灌装设备_青州惠联灌装机械 | 鼓风干燥箱_真空烘箱_高温干燥箱_恒温培养箱-上海笃特科学仪器 | 电动液压篮球架_圆管地埋式篮球架_移动平箱篮球架-强森体育 | 宝宝药浴-产后药浴-药浴加盟-艾裕-专注母婴调养泡浴 | 黑龙江京科脑康医院-哈尔滨精神病医院哪家好_哈尔滨精神科医院排名_黑龙江精神心理病专科医院 | DAIKIN电磁阀-意大利ATOS电磁阀-上海乾拓贸易有限公司 | 协议书_协议合同格式模板范本大全| 五轴加工中心_数控加工中心_铝型材加工中心-罗威斯 | 土壤墒情监测站_土壤墒情监测仪_土壤墒情监测系统_管式土壤墒情站-山东风途物联网 | 金库门,金库房,金库门厂家,金库门价格-河北特旺柜业有限公司 | 合肥升降机-合肥升降货梯-安徽升降平台「厂家直销」-安徽鼎升自动化科技有限公司 | 电动不锈钢套筒阀-球面偏置气动钟阀-三通换向阀止回阀-永嘉鸿宇阀门有限公司 | 聚合氯化铝_喷雾聚氯化铝_聚合氯化铝铁厂家_郑州亿升化工有限公司 | 金属切削液-脱水防锈油-电火花机油-抗磨液压油-深圳市雨辰宏业科技发展有限公司 | 上海新光明泵业制造有限公司-电动隔膜泵,气动隔膜泵,卧式|立式离心泵厂家 | 电镀标牌_电铸标牌_金属标贴_不锈钢标牌厂家_深圳市宝利丰精密科技有限公司 | 钢格板|热镀锌钢格板|钢格栅板|钢格栅|格栅板-安平县昊泽丝网制品有限公司 | 集装袋吨袋生产厂家-噸袋廠傢-塑料编织袋-纸塑复合袋-二手吨袋-太空袋-曹县建烨包装 | 剪刃_纵剪机刀片_分条机刀片-南京雷德机械有限公司 | 千斤顶,液压千斤顶-力良企业,专业的液压千斤顶制造商,shliliang.com | 亳州网络公司 - 亳州网站制作 - 亳州网站建设 - 亳州易天科技 | 常州减速机_减速机厂家_常州市减速机厂有限公司 |