英文:
How to parse a string with GMT into datetime in c#
问题
我有这个输入日期字符串:15/03/2023 15:13:37 GMT
,我想将它转换为日期时间。
我正在尝试这样做:DateTime outputDate = DateTime.ParseExact(inputDateString, "dd/MM/yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture);
我收到这个错误:c# 字符串 '10/05/2023 18:19:27 GMT' 未被识别为有效的 DateTime。
我该如何将这个日期字符串转换为日期时间?
英文:
I have this inputDateString: 15/03/2023 15:13:37 GMT
and I want to convert it to datetime.
I am doing this: DateTime outputDate = DateTime.ParseExact(inputDateString, "MM/dd/yyyy:hhmmss \"GMT\"", CultureInfo.InvariantCulture);
I get this error: c# String '10/05/2023 18:19:27 GMT' was not recognized as a valid DateTime.
How can I convert this date string to a datetime?
答案1
得分: 1
你的日期格式不正确,这段代码是正确的,更好的做法是你必须指定时区。
DateTime outputDate = DateTime.ParseExact("15/03/2023 15:13:37 GMT", "dd/MM/yyyy HH:mm:ss GMT", CultureInfo.InvariantCulture);
英文:
your format date incorrect ,This code is correct,better but you must specify the timezone
DateTime outputDate = DateTime.ParseExact("15/03/2023 15:13:37 GMT", "dd/MM/yyyy HH:mm:ss GMT", CultureInfo.InvariantCulture);
答案2
得分: 0
var date = DateTime.ParseExact("15/03/2023 15:13:37 GMT", "dd/MM/yyyy HH:mm:ss GMT", CultureInfo.InvariantCulture);
应该可以将字符串解析为 DateTime。如果您想处理时区,我建议您阅读关于 DateTimeOffset
类的文档。
拥有一个 DateTime 类可以让您按需要将其解析为字符串,传递您想要的格式:
Console.WriteLine(date.ToString("yyyy-MM-dd HH:mm:ss"));
英文:
var date = DateTime.ParseExact("15/03/2023 15:13:37 GMT", "dd/MM/yyyy HH:mm:ss GMT", CultureInfo.InvariantCulture);
Should do the trick to parse from string to DateTime. If you want to mess with the timezones I recommend you to read about the DateTimeOffset
class.
Having a DateTime class allows you to parse it to string the way you need passing the format you want:
Console.WriteLine( date.ToString("yyyy-MM-dd HH:mm:ss"));
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论