在 Flex 中将字符串转换为 DateTime 类型,可以使用 DateFormatter 和 parseDateString 方法。例如:

var dateFormatter:DateFormatter = new DateFormatter();
dateFormatter.formatString = 'EEE MMM DD HH:NN:SS ZZZ YYYY';
var date:Date = dateFormatter.parseDateString(time);

在 C# 中将字符串转换为 DateTime 类型,可以使用 DateTime.ParseExact 方法,指定格式为 'ddd MMM dd HH:mm:ss UTCzzz yyyy'。例如:

string time = 'Mon Jun 26 08:56:33 UTC+0800 2023';
DateTime dateTime = DateTime.ParseExact(time, 'ddd MMM dd HH:mm:ss UTCzzz yyyy', CultureInfo.InvariantCulture);

关于字符串中的 + 号,如果它表示时区偏移量,可以使用 zzz 表示,如果不是,可以将其去掉。在这个示例中,+0800 表示东八区时区偏移量,可以使用 zzz 表示。

判断 + 号是否表示时区偏移量

可以通过以下方法判断:

  1. 查看 JavaScript gettime 方法的文档,了解该方法返回的字符串格式。
  2. 检查字符串中 + 号的位置和格式。如果 + 号紧跟在 UTC 之后,并且后面是四位数字,则表示时区偏移量。

注意:

  • 在 Flex 中,使用 DateFormatter 时,formatString 需要与 JavaScript gettime 方法返回的字符串格式一致。
  • 在 C# 中,使用 DateTime.ParseExact 时,指定的格式字符串也需要与 JavaScript gettime 方法返回的字符串格式一致。
Flex 和 C# 中将 JavaScript gettime 返回的字符串转换为 DateTime 类型

原文地址: https://www.cveoy.top/t/topic/oV3T 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录