繁体   English   中英

C#DateTime.ParseExact

[英]C# DateTime.ParseExact

我有一个制表符分隔的文件,正在解析该文件,然后将其插入数据库。 当我遇到日期列时,我在解析它时遇到了麻烦。

我的代码是:

var insert = DateTime.ParseExact(line[i], "d/M/yyyy h:mm", CultureInfo.InvariantCulture);

line[i]的字符串格式为: 7/7/2011 10:48 : 7/7/2011 10:48 10/20/2011 6:27

我说的例外

日历System.Globalization.GregorianCalendar不支持由字符串表示的DateTime。

您的格式字符串错误。 更改为

insert = DateTime.ParseExact(line[i], "M/d/yyyy hh:mm", CultureInfo.InvariantCulture);

那是因为您在line[i]中具有American格式的Date和在FormatString UK格式的日期。

11/20/2011
M / d/yyyy

我猜您可能需要将FormatString更改为:

"M/d/yyyy h:mm"

与此相关的SO线程中介绍的区域性可能存在相同的问题: 为什么DateTime.ParseExact()无法使用“ M / d / yyyy”解析“ 9/1/2009”

您已经指定了区域性,所以请尝试转义斜线。

尝试这个

var  insert = DateTime.ParseExact(line[i], "M/d/yyyy h:mm", CultureInfo.InvariantCulture);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM