我正在使用此代码:
var sec = "163516";
TimeSpan time = TimeSpan.FromSeconds(double.Parse(sec));
DateTime butikDatetime = DateTime.Today.Add(time);
string dateTime = butikDatetime.ToString("dd-MM-yy HH:mm:ss");
DateTime date = DateTime.ParseExact(dateTime, "dd-MM-yy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
但是接收ParseExact的错误:
其他信息:字符串未被识别为有效的DateTime。
有人知道出了什么问题?
答案 0 :(得分:0)
您正在将butikDateTime
转换为没有文化的dateTime对象(框架将使用当前的线程文化),然后重新转换使用的Invariant文化。在将butikDateTime转换为字符串
var sec = "163516";
TimeSpan time = TimeSpan.FromSeconds(double.Parse(sec));
DateTime butikDatetime = DateTime.Today.Add(time);
string dateTime = butikDatetime.ToString("dd-MM-yy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
DateTime date = DateTime.ParseExact(dateTime, "dd-MM-yy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
将第3行更新为:
string dateTime = butikDatetime.ToString("dd-MM-yy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);