C#中如何获得两个日期之间的天数差

C#中如何获得两个日期之间的天数差... C#中如何获得两个日期之间的天数差 展开
 我来答
笨笨地摊货
推荐于2019-11-03 · TA获得超过1.8万个赞
知道小有建树答主
回答量:165
采纳率:100%
帮助的人:8.4万
展开全部

C#中计算2个时间之间的差(可以计算到时分秒),参考代码如下:

  • label1.Text = "2012-1-1 15:36:05"; label2.Text = "2012-2-1 20:16:35"; DateTime d1

  • =new DateTime(2012,1,1,15,36,05); DateTime d2 =new DateTime(2012,2,1,20,16,35);

  • TimeSpan d3 = d2.Subtract(d1); label3.Text = "相差:" +d3.Days.ToString()+"天" +d3.Hours.ToString()+"小时" +d3.Minutes.ToString()+"分钟" +d3.Seconds.ToString()+"秒"。

拓展资料:

C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似。

它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司 .NET windows网络框架的主角。

职场汤达人
推荐于2019-11-05 · 带你领略社会百态。。
职场汤达人
采纳数:141 获赞数:10331

向TA提问 私信TA
展开全部

定义timespan直接减即可。

拓展资料

DateTime oldDate = new DateTime(2006,6,13);
DateTime newDate = DateTime.Now;
TimeSpan ts = newDate - oldDate;
int differenceInDays = ts.Days;
Console.WriteLine("Difference in days: {0} ", differenceInDays);

DateTime 值类型与 TimeSpan 值类型的差异在于 DateTime 表示时间上的一刻,而 TimeSpan 表示时间间隔。

例如,这表示您可以从 DateTime 的一个实例减去另一个实例来获得它们之间的时间间隔。也可以将正的 TimeSpan 加到当前的 DateTime 来计算将来的日期。

时间值可以加到 DateTime 的实例上,也可以从其中减去。时间值可以为正数也可以为负数,并可以刻度、秒等单位或 TimeSpan 的实例来表示。此值类型中的方法和属性会考虑闰年和月中天数等细节。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来自小龙山单纯的路西法
2017-02-13 · TA获得超过164个赞
知道小有建树答主
回答量:82
采纳率:0%
帮助的人:78.4万
展开全部

楼上贴的代码可能都不是楼主想要的,楼上的代码都是给的绝对时间差,如果我想算"2017-2-13 23:59:59"到"2017-2-14 0:00:01"这两个时间相差的天数,那应该是1天,但是用楼上的代码得到的只有2秒的时间差。

想要算相隔天数,可以这样:

string str1 = "2017-2-13 23:59:59";
string str2 = "2017-2-14 0:00:01";
DateTime d1 = Convert.ToDateTime(str1);
DateTime d2 = Convert.ToDateTime(str2);
DateTime d3 = Convert.ToDateTime(string.Format("{0}-{1}-{2}", d1.Year, d1.Month, d1.Day));
DateTime d4 = Convert.ToDateTime(string.Format("{0}-{1}-{2}", d2.Year, d2.Month, d2.Day));
int days = (d4 - d3).Days;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一骑当后
推荐于2017-09-01 · 知道合伙人数码行家
一骑当后
知道合伙人数码行家
采纳数:40298 获赞数:306435
网络、设备维护、电路、弱电检测。

向TA提问 私信TA
展开全部

  C#中计算2个时间之间的差(可以计算到时分秒);

  参考代码如下:

label1.Text = "2012-1-1 15:36:05"; 
label2.Text = "2012-2-1 20:16:35"; 
DateTime d1 =new DateTime(2012,1,1,15,36,05); 
DateTime d2 =new DateTime(2012,2,1,20,16,35); 
 
TimeSpan d3 = d2.Subtract(d1); 
 
label3.Text = "相差:" 
+d3.Days.ToString()+"天" 
+d3.Hours.ToString()+"小时" 
+d3.Minutes.ToString()+"分钟" 
+d3.Seconds.ToString()+"秒";
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
清水栞
2014-11-07 · TA获得超过1547个赞
知道小有建树答主
回答量:1538
采纳率:50%
帮助的人:981万
展开全部
DateTime d1;
DateTime d2;
//自己去赋值吧
int days = (d1 - d2).Days;//天数差
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式