繁体   English   中英

如何格式化此字符串,以便Convert.ToDateTime可以识别它?

[英]How to format this string so that it can be recognized by Convert.ToDateTime?

我从数据库给出了这整个字符串:

CCC_0293170118-10-2013-20-27-54.541

我有子串,所以我得到18-10-2013-20-27-54 ,但它抛出一个错误

我想将它转换为DateTime,以便我可以将其与另一个DateTime进行比较,格式为“{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);

在此处指定不变文化以确保使用公历是很重要的 - 如果您使用“当前系统文化”,那么它可以使用不同的默认日历系统。

暂无
暂无

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

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