如何设置此字符串的格式,以便 Convert.ToDateTime 可以识别它
本文关键字:Convert 以便 ToDateTime 识别 格式 何设置 设置 字符串 | 更新日期: 2023-09-27 18:37:17
我从数据库中得到了整个字符串:
CCC_0293170118-10-2013-20-27-54.541
我有子字符串,所以我得到了18-10-2013-20-27-54
,但它抛出了一个错误
,以便我可以将其与格式为"{10/18/2013 8:28:46 PM}"的另一个日期时间进行比较,以获得时差。
您可以使用
"dd-MM-yyyy-HH-mm-ss"
格式,例如;
string s = "18-10-2013-20-27-54";
DateTime dt = DateTime.ParseExact(s, "dd-MM-yyyy-HH-mm-ss", CultureInfo.InvariantCulture);
Console.WriteLine(dt);
输出将是;
10/18/2013 8:27:54 PM
这里有一个demonstration
.
DateTime
没有格式。这只是一个值。
要解析诸如"18-10-2013-20-27-54"之类的值,您应该使用DateTime.ParseExact
(或DateTime.TryParseExact
,如果数据可能在某种程度上无效)。所以像这样:
DateTime value = DateTime.ParseExact(text, "dd-MM-yyyy-HH-mm-ss",
CultureInfo.InvariantCulture);
请务必在此处指定固定区域性以确保使用公历 - 如果使用"当前系统区域性",则它可能使用不同的默认日历系统。