System.DateTime.ParseExact:无法识别的格式字符串 - c#

var timestamp = DateTime.ParseExact("20140101T000000Z", "YYYYMMDDThhmmssZ", CultureInfo.InvariantCulture);

System.FormatException was unhandled by user code
  HResult=-2146233033
  Message=String was not recognized as a valid DateTime.
  Source=mscorlib

这对我来说毫无意义,因为YYYYMMDDThhmmssZ是ISO-8601 YYYY-MM-DDThh:mm:ssZ,其中删除了特殊格式字符。

参考方案

问题是YYYYDD不是有效的格式说明符。请改用yyyydd,如果要使用24小时制,请使用HH

var timestamp = DateTime.ParseExact("20140101T000000Z", "yyyyMMddTHHmmssZ", CultureInfo.InvariantCulture);

另请注意,此处的Z被解释为原义的Z字符。它不能替代时区说明符z

进一步阅读

Custom Date and Time Format Strings

C#System.DateTime.Now返回在Windows中设置的自定义时间格式 - c#

C#System.DateTime.Now给我带时间的日期,但是无论我在Windows calander中设置的是什么,它都给我格式,即(am)(pm)甚至是(xyz),如何获取标准时间格式(AM / PM)而不管在Windows calander中设置的自定义时间格式? 参考方案 如果使用DateTime作为DateTime类型,则它将自动显示窗口格式。对…

C#无法将类型为“ System.Double”的对象转换为类型为“ System.Single” - c#

在判断此问题已得到回答之前,请阅读说明。我在下面有这个简单的代码:Dictionary<string, object> d = new Dictionary<string, object>(); d.Add("key" , 30d); System.Diagnostics.Debug.WriteLine($…

获取Java中的BIOS时间 - java

Java中有没有办法获取BIOS日期和时间?调用java.util.Calendar.getInstance()或new java.util.Date()?时Java是否使用BIOS(基本输入/输出系统)日期时间我确实知道Java以格林尼治标准时间1970年1月1日00:00:00为基础以某种方式工作当前的日期和时间。但是到底如何呢? 参考方案 它询问操作系…

错误:无法将类型为“ System.Int32”的对象转换为类型为“ System.String”的对象 - c#

我已经完成了完美的编码注册页面,登录代码,现在UpdateCustomer页面有错误-背景信息:我正在使用Microsoft Access作为数据源 LabelState.Text = (string)Session["sState"]; LabelPostalCode.Text = (string)Session["sPost…

System.out.println-此方法是否在Java中链接? - java

我想知道下面的Java代码:“ System.out.println”。我对此是正确的:“系统”是静态类。 “ .out”是“系统”类的方法。这是我对“ .println”有点困惑的地方-这是一个什么类/对象的方法?另外,这个概念被称为“方法链接”吗?谢谢GF 参考方案 不,这不是方法链接。您正确地认为System是一个类(只是一个常规类,不是“静态”,只有…