如何在asp.net c#
中计算 '33小时40分40秒的总秒数答案 0 :(得分:14)
new TimeSpan(33, 40, 40).TotalSeconds;
答案 1 :(得分:5)
如果您获得格式为"33 hr 40 mins 40 secs"
的字符串,则必须先解析字符串。
var s = "33 hr 40 mins 40 secs";
var matches = Regex.Matches(s, "\d+");
var hr = Convert.ToInt32(matches[0]);
var min = Convert.ToInt32(matches[1]);
var sec = Convert.ToInt32(matches[2]);
var totalSec = hr * 3600 + min * 60 + sec;
显然,该代码没有涉及错误检查。因此,您可能希望执行以下操作:确保找到3个匹配项,匹配项是分钟和秒的有效值等。
答案 2 :(得分:2)
分开小时,分钟和秒钟,然后使用
<强> 被修改 强>
TimeSpan ts = new TimeSpan(33,40,40);
/* Gets the value of the current TimeSpan structure expressed in whole
and fractional seconds. */
double totalSeconds = ts.TotalSeconds;
答案 3 :(得分:0)
试试这个 -
// Calculate seconds in string of format "xx hr yy mins zz secs"
public double TotalSecs(string myTime)
{
// Split the string into an array
string[] myTimeArr = myTime.Split(' ');
// Calc and return the total seconds
return new TimeSpan(Convert.ToInt32(myTimeArr[0]),
Convert.ToInt32(myTimeArr[2]),
Convert.ToInt32(myTimeArr[4])).TotalSeconds;
}