C# 两个日期相减得到月数和天数和时and计算 日期减去月之后的日期

【得到相差的 月份数】

DateTime startDate = DateTime.Parse("2006-12-1");
DateTime endDate = DateTime.Parse("2006-02-25");   //结束时间-起始时间
int totalMonth = endDate.Year * 12 + endDate.Month - startDate.Year * 12 - startDate.Month;

  

【得到相差的 天数 和 小时】

DateTime t1 = DateTime.Parse("2006-12-1");
DateTime t2 = DateTime.Parse("2006-02-25");
System.TimeSpan ts = t2 - t1;
int days = ts.Days;     //天
int  Hours= ts.Hours;  //小时
TextBox1.Text = (days / 30).ToString();

 

【得到天、时、分、秒差(各为小数)】  

DateTime t1 = Convert.ToDateTime("2015-01-02 12:10:9");
DateTime t2 =  Convert.ToDateTime("2015-01-03 14:11:10");
System.TimeSpan ts = t2 - t1;


ts.TotalDays    1天2小时1分1秒
ts.TotalHours   26小时1分1秒
ts.TotalMinutes  。。。。。。。。。。。 
ts.TotalSeconds  。。。。。

 

  

【计算 日期减去月之后的日期】

function aa(){
var str_dt = '2011/12/31';
var day = str_dt.substring(str_dt.lastIndexOf('/') + 1); //获取源数据的天数值,这里是31

var dt = new Date(str_dt);
var result = [];

dt.setMonth(dt.getMonth() - 10);

result.push(dt.getFullYear());

  

【计算结果日期值<源数据日期值时,说明日期值超过当月最大天数,日期值修改为当月最大天数值】

if (dt.getDate() < day) {
result.push(dt.getMonth());
dt.setDate(0);
}
else result.push(dt.getMonth() + 1);
result.push(dt.getDate());

alert(result.join('/'));
}

  



【获取当前时间所在周的第一天和最后一天】

int dayOfWeek = Convert.ToInt32(DateTime.Now.DayOfWeek); 
int daydiff = (-1) * dayOfWeek + 1; 
int dayadd = 5 - dayOfWeek; 

DateTime weekStartDate = DateTime.Now.AddDays(daydiff); 
DateTime weekEndDate = DateTime.Now.AddDays(dayadd); 
 

  

 

  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值