Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 获取只剩下结束日期和当前日期的剩余时间百分比_C#_Datetime - Fatal编程技术网

C# 获取只剩下结束日期和当前日期的剩余时间百分比

C# 获取只剩下结束日期和当前日期的剩余时间百分比,c#,datetime,C#,Datetime,我有两个变量:endDate=newdatetime(2013,10,24,17,30,35)和currentDate=DateTime.Now。剩余时间为endDate-currentDate。我如何将其转化为百分比 编辑:我明白了,我想知道这两个数字是否会产生某种疯狂的数学魔法,但我想没有开始日期是不可能的。你不能,因为你需要知道开始日期。我知道了 endDate - currentDate = 100% The amount of time remaining!! 或如果您修改代码以便:

我有两个变量:
endDate=newdatetime(2013,10,24,17,30,35)
currentDate=DateTime.Now
。剩余时间为
endDate-currentDate
。我如何将其转化为百分比


编辑:我明白了,我想知道这两个数字是否会产生某种疯狂的数学魔法,但我想没有开始日期是不可能的。

你不能,因为你需要知道开始日期。

我知道了

endDate - currentDate = 100% The amount of time remaining!!
如果您修改代码以便:

 endDate = new DateTime(2013, 10, 24, 17, 30, 35)

剩余时间为endDate-DateTime.Now()

然后你可以把它转换成一个百分比

    amountLeftDate= endDate - DateTime.Now()

    if (!(s >= DateTime.Now()) && amountLeftDate > 0) {
        percentoftimeleft = (amountLeftDate) * 100 / (endDate  - startDate);
    }

每次你跑步

的百分比是多少?一个百分比就是一个比例——大概你对剩余时间与“原始”时间的比例感兴趣。。。如果没有原始的时间量,它就没有任何百分比。我假设你也有一个
startDate
?你需要一个开始日期来计算还剩多少时间,否则你只是从
DateTime开始倒计时。现在
endDate
“疯狂魔法数学”无法解决信息不足的问题。暂时忘掉电脑吧:如果我给你“2012年6月10日”作为当前日期,“2014年8月13日”作为结束日期,结果会是什么?为什么?如果你不能回答这个问题,那么无论程序多么智能,计算机也无法回答。你的百分比计算缺少分母。总时间或开始日期需要另一个变量,以便计算总时间。
    amountLeftDate= endDate - DateTime.Now()

    if (!(s >= DateTime.Now()) && amountLeftDate > 0) {
        percentoftimeleft = (amountLeftDate) * 100 / (endDate  - startDate);
    }