使用 PST/CEST/UTC/等形式的时区解析 DateTime

Parse DateTime with time zone of form PST/CEST/UTC/etc(使用 PST/CEST/UTC/等形式的时区解析 DateTime)

本文介绍了使用 PST/CEST/UTC/等形式的时区解析 DateTime的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试解析类似于以下内容的国际日期时间字符串:

I'm trying to parse an international datetime string similar to:

24-okt-08 21:09:06 CEST

到目前为止,我得到了类似的东西:

So far I've got something like:

CultureInfo culture = CultureInfo.CreateSpecificCulture("nl-BE");
DateTime dt = DateTime.ParseExact("24-okt-08 21:09:06 CEST",
    "dd-MMM-yy HH:mm:ss ...", culture);

问题是我应该为格式字符串中的..."使用什么?查看 自定义日期和时间格式字符串 MSDN 页面似乎没有以 PST/CEST/GMT/UTC 形式列出用于解析时区的格式字符串.

The problem is what should I use for the '...' in the format string? Looking at the Custom Date and Time Format String MSDN page doesn't seem to list a format string for parsing timezones in PST/CEST/GMT/UTC form.

推荐答案

AFAIK 无法识别时区缩写.但是,如果您将缩写替换为时区偏移量,就可以了.例如:

AFAIK the time zone abbreviations are not recognized. However if you replace the abbreviation with the time zone offset, it will be OK. E.g.:

DateTime dt1 = DateTime.ParseExact("24-okt-08 21:09:06 CEST".Replace("CEST", "+2"), "dd-MMM-yy HH:mm:ss z", culture);
DateTime dt2 = DateTime.ParseExact("24-okt-08 21:09:06 CEST".Replace("CEST", "+02"), "dd-MMM-yy HH:mm:ss zz", culture);
DateTime dt3 = DateTime.ParseExact("24-okt-08 21:09:06 CEST".Replace("CEST", "+02:00"), "dd-MMM-yy HH:mm:ss zzz", culture);

这篇关于使用 PST/CEST/UTC/等形式的时区解析 DateTime的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:使用 PST/CEST/UTC/等形式的时区解析 DateTime

基础教程推荐