如何将字符串转换为特定的日期时间格式

本文关键字:日期 时间 格式 字符串 转换 | 更新日期: 2023-09-27 17:56:17

嗨,我正在将字符串转换为DateTime变量,但出现异常。请告诉我这种方法有什么问题?

string str = "24-04-2014T15:18:18";
DateTime dtStartDateTime = DateTime.ParseExact(stime, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture);

例外情况是:

字符串未被识别为有效的日期时间。

如何将字符串转换为特定的日期时间格式

改用dd-MM-yyyyTHH:mm:ss格式。字符串和格式不完全匹配。

DateTime.ParseExact方法

将日期和时间的指定字符串表示形式转换为其 使用指定格式和特定于区域性的 DateTime 等效项 格式信息。字符串表示形式的格式必须匹配 完全指定的格式。

string str = "24-04-2014T15:18:18";
DateTime dtStartDateTime = DateTime.ParseExact(str,
                                    "dd-MM-yyyyTHH:mm:ss",
                                     CultureInfo.InvariantCulture);

这里有一个demonstration.

顺便说一句,我认为你的stime应该str :)

好的,所以如果我理解这个问题,我认为这就是你需要的:

string str = "24-04-2014T15:18:18";
DateTime dtStartDateTime = DateTime.ParseExact(str, "dd-MM-yyyyTHH:mm:ss", CultureInfo.InvariantCulture);
string stime = dtStartDateTime.ToString("yyyy-MM-ddTHH:mm:ss");

这将从第一种格式中获取文本并为您提供第二种格式。