转换字符串格式”;yyyy-MM-ddTHH:MM:ss.fffZ”;到DateTime
本文关键字:DateTime fffZ ss yyyy-MM-ddTHH 字符串 格式 转换 MM | 更新日期: 2023-09-27 18:23:38
我知道这个问题已经被问了很多不同的方法,我都看过了,但似乎没有一个解决方案对我有效。所以,我希望你们能帮我一个忙。
输入字符串为:"2000-01-01T12:00:000Z"。我需要获取输入字符串并将其转换为DateTime,以便将其存储在数据库中。
我一直在使用ParseExact,但我一直收到无法识别的日期字符串异常。我哪里错了?
inValue.LatestDepartTime = "2000-01-01T12:00:000Z";
DateTime _latestDepartTime = DateTime.ParseExact(inValue.LatestDepartTime, "yyyy-MM-dd HH:mm:ss.fff", CultureInfo.InvariantCulture);
您的格式字符串需要与输入完全匹配。
这包括文字T
和Z
字符。
使用yyyy-MM-dd'T'HH:mm:ss.fff'Z'
代码为:
public DateTime convertIsoToDateTime (string iso)
{
return DateTime.ParseExact(iso, "yyyy-MM-dd'T'HH:mm:ss.fff'Z'", CultureInfo.InvariantCulture);
}
您需要在格式字符串中包含''T
和''Z
,以匹配文本T
和Z
。
您没有在模式中指定T
。
也就是说,您可能想要了解XmlConvert
类,它提供了转换这种格式的方法。
您需要在T和Z:周围加上单引号
DateTime parsedDateTime;
DateTime.TryParseExact(obj, "yyyy-MM-dd'T'HH:mm:ss'Z'", null, System.Globalization.DateTimeStyles.None, out parsedDateTime);
return parsedDateTime;