代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
C#
】
两个日期范围内的间隔
作者:
欣然
/ 发布于
2016/5/3
/
780
/// <summary> /// 计算日期的间隔(静态类) /// </summary> public static class dateTimeDiff { #region 计算日期间隔 /// <summary> /// 计算日期间隔 /// </summary> /// <param name="d1">要参与计算的其中一个日期字符串</param> /// <param name="d2">要参与计算的另一个日期字符串</param> /// <returns>一个表示日期间隔的TimeSpan类型</returns> public static TimeSpan toResult(string d1, string d2) { try { DateTime date1 = DateTime.Parse(d1); DateTime date2 = DateTime.Parse(d2); return toResult(date1, date2); } catch { throw new Exception("字符串参数不正确!"); } } #endregion #region 计算日期间隔 /// <summary> /// 计算日期间隔 /// </summary> /// <param name="d1">要参与计算的其中一个日期</param> /// <param name="d2">要参与计算的另一个日期</param> /// <returns>一个表示日期间隔的TimeSpan类型</returns> public static TimeSpan toResult(DateTime d1, DateTime d2) { TimeSpan ts; if (d1 > d2) { ts = d1 - d2; } else { ts = d2 - d1; } return ts; } #endregion #region 计算日期间隔 /// <summary> /// 计算日期间隔 /// </summary> /// <param name="d1">要参与计算的其中一个日期字符串</param> /// <param name="d2">要参与计算的另一个日期字符串</param> /// <param name="drf">决定返回值形式的枚举</param> /// <returns>一个代表年月日的int数组,具体数组长度与枚举参数drf有关</returns> public static int[] toResult(string d1, string d2, diffResultFormat drf) { try { DateTime date1 = DateTime.Parse(d1); DateTime date2 = DateTime.Parse(d2); return toResult(date1, date2, drf); } catch { throw new Exception("字符串参数不正确!"); } } #endregion #region 计算日期间隔 /// <summary> /// 计算日期间隔 /// </summary> /// <param name="d1">要参与计算的其中一个日期</param> /// <param name="d2">要参与计算的另一个日期</param> /// <param name="drf">决定返回值形式的枚举</param> /// <returns>一个代表年月日的int数组,具体数组长度与枚举参数drf有关</returns> public static int[] toResult(DateTime d1, DateTime d2, diffResultFormat drf) { #region 数据初始化 DateTime max; DateTime min; int year; int month; int tempYear, tempMonth; if (d1 > d2) { max = d1; min = d2; } else { max = d2; min = d1; } tempYear = max.Year; tempMonth = max.Month; if (max.Month < min.Month) { tempYear--; tempMonth = tempMonth + 12; } year = tempYear - min.Year; month = tempMonth - min.Month; #endregion #region 按条件计算 if (drf == diffResultFormat.dd) { TimeSpan ts = max - min; return new int[] { ts.Days }; } if (drf == diffResultFormat.mm) { return new int[] { month + year * 12 }; } if (drf == diffResultFormat.yy) { return new int[] { year }; } return new int[] { year, month }; #endregion } #endregion } #region 关于返回值形式的枚举 /// <summary> /// 关于返回值形式的枚举 /// </summary> public enum diffResultFormat { /// <summary> /// 年数和月数 /// </summary> yymm, /// <summary> /// 年数 /// </summary> yy, /// <summary> /// 月数 /// </summary> mm, /// <summary> /// 天数 /// </summary> dd, } #endregion
试试其它关键字
日期范围
同语言下
.
C#实现的html内容截取
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
.
实现对图片上传的接收
.
去除字符串中的空格,回车,换行符转变成‘;’在按‘
.
按照回车换行符分割字符串
.
文件MD5码 比较,检测文件是否一样
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
欣然
贡献的其它代码
(
11
)
.
获取微信昵称时 过滤特殊字符
.
java模拟ssh执行shell命令
.
一组数中两两二元组,差最大有几对,差最小呢?(数组
.
构造连续日期的sql
.
倒计时间表
.
将str进行用pad进行左补足到len位
.
字符串转成 Json 格式
.
判断复选框是否为空
.
两个日期范围内的间隔
.
8数码游戏
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3