3

可能重复:
将复杂的字符串解析为 DateTime

我有一个带时间的字符串日期,我想将其解析为 DateTime。由于奇怪的格式,我不太确定如何解决它。帮助表示赞赏。

示例:2008 年 3 月 24 日星期一 13-42-30

4

4 回答 4

2

尝试:

var theDate = DateTime.ParseExact(
    "Fri Jul 13 13-42-30 2012", 
    "ddd MMM dd HH-mm-ss yyyy", 
    System.Globalization.CultureInfo.InvariantCulture);

可以在此处找到日期字符串格式选项。

于 2012-07-13T15:30:46.457 回答
2

DateTime.ParseExact应该做你想做的事:

var dateTime = DateTime.ParseExact(
    "Mon Mar 24 13-42-30 2008",
    "ddd MMM dd HH-mm-ss yyyy",
    CultureInfo.CurrentCulture);

CultureInfo.CurrentCulture有人可以告诉我使用and 和CultureInfo.InvariantCulture其他答案的区别吗?我假设可能需要用他们的母语解析日期名称和月份名称等内容。谢谢。

于 2012-07-13T15:31:46.897 回答
0

这种格式似乎并不奇怪,但您可以使用DateTime.ParseExact()轻松处理它。当然,它假定格式保持不变。

于 2012-07-13T15:29:34.540 回答
0

请尝试这种方式

string format ="ddd MMM dd hh-mm-ss yyyy";
DateTime dt = DateTime.ParseExact(format, dateString, CultureInfo.InvariantCulture);
于 2012-07-13T15:33:07.127 回答