我想检查时间跨度字符串的正确格式
intervalString = "23:54:00";
format = "hh\\:mm\\:ss";
culture = CultureInfo.CurrentCulture;
var reded= TimeSpan.ParseExact(intervalString, "hh\\:mm\\:ss", CultureInfo.InvariantCulture);
结果为23:54:00
如果我尝试使用intervalString = "28:54:00";
,我会收到例外情况
如何检查它是否失败并毫无例外地继续我的代码?
答案 0 :(得分:6)
请改用#!r6rs
(import (except (rnrs base) map)
(only (srfi :1) map circular-list))
(map + '(1 2 3) (circular-list 2)) ; ==> (3 4 5)
。它将返回一个TimeSpan.TryParseExact()
值,指示该值是否已成功解析。
bool
答案 1 :(得分:2)
只需使用针对此特定情况设计的method:
var isParsed = TimeSpan.TryParseExact(
intervalString,
"hh\\:mm\\:ss",
CultureInfo.InvariantCulture
out TimeSpan reded // it's your parsed value
);
// use reded if isParsed == true