s_Time = DateTime.ParseExact("113388", "HHmmss", null);
ss
超过59时出错。如何避免这种情况。
如果ss
超过59,我想将其显示为00。
我怎样才能实现这个目标?
实际上我有一个包含验证时间的文件名。 ss会随机出现,可能是00到99,但是当它的重量超过59时,我必须显示00
答案 0 :(得分:1)
跟进我的评论,这对我来说最有意义。将字符串视为添加到您解析的小时和分钟。
var temp = "113388";
s_Time = DateTime.ParseExact(temp.Substring(0, 4
), "HHmm", null).AddSeconds(int.Parse(temp.Substring(4)));
当秒针说88但=)
时,我只会检查这个答案 1 :(得分:0)
Hexxagonal probably has the most sensible solution,但是如果你 因某种原因想要用" 00"替换字符串的最后部分(秒)当值高于59,不更新分钟部分时,这应该有效:
var input = "113388"; // original
var secsPart = input.Substring(4);
// Get 00 if over 59, else keep the seconds as they are:
var seconds = int.Parse(secsPart) > 59 ? "00" : secsPart;
var editedInput = input.Substring(0,4) + seconds;
var s_Time = DateTime.ParseExact(editedInput, "HHmmss", null);