我有一个原始文件。然后,我用X%加速了它。我需要在加速文件中计算秒数。例如原始文件中的5秒=加速文件中的x秒。这是我的代码:
private static TimeSpan GetSpeedUpTime(double seconds)
{
var time = new TimeSpan(0, 0, (int)Math.Floor(seconds));
int increaseSpeedValue;
int.TryParse(ConfigurationManager.AppSettings["IncreaseSpeedValue"], out increaseSpeedValue);
return new TimeSpan(0, 0, (int)Math.Floor(seconds * increaseSpeedValue / 100));
}
我无法理解我做错了什么?我知道任务很简单......但是在一小时内无法解决......
答案 0 :(得分:1)
此increaseSpeedValue / 100
将作为整数除法处理。 See remarks section here。这会将您的TimeSpan设置为错误。
解决方案是投射到(double)
或简单地写100.0