C# 计算传入的时间距离今天的时间差
2018-06-22 07:51:01来源:未知 阅读 ()
/// <summary>
/// 计算传入的时间距离今天的时间差
/// </summary>
/// <param name="dt"></param>
/// <param name="yy"></param>
/// <param name="mm"></param>
/// <param name="dd"></param>
public void GetCriminalYX(DateTime dt, out int yy, out int mm, out int dd)
{
DateTime now = DateTime.Now;
yy = mm = dd = 0;
if (dt.Year > 9000 || dt.Year == 1900)
{
return;
}
if (dt <= now)
{
return;
}
StringBuilder str = new StringBuilder();
int dt_Y = dt.Year;
int dt_M = dt.Month;
int dt_D = dt.Day;
int now_Y = DateTime.Now.Year;
int now_M = DateTime.Now.Month;
int now_D = DateTime.Now.Day;
yy = dt_Y - now_Y;
mm = dt_M - now_M;
dd = 0;
int dt_M_SY = 0;
if (dt_D < now_D)
{
mm -= 1;
dt_M_SY = dt_M - 1;
if (dt_M_SY == 0)
{
dt_M_SY = 12;
}
if (dt_M_SY == 2)
{
dt_M_SY = dt_Y % 4 == 0 ? 29 : 28;
}
else
{
dt_M_SY = dt_M_SY == 2 || dt_M_SY == 4 || dt_M_SY == 6 || dt_M_SY == 9 || dt_M_SY == 11 ? 30 : 31;
}
dt_D += dt_M_SY;
}
dd = dt_D - now_D;
if (mm < 0)
{
yy -= 1;
mm += 12;
}
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- ASP.NET页面请求超时时间设置多种方法 2019-11-19
- .NET添加时间戳防止重放攻击 2019-11-17
- 详解C#时间格式化的用法 2019-10-08
- 在线服务 2019-07-23
- 漫谈Ajax在.Net中的使用 2019-06-20
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash