【问题标题】:Change TimeZone for DateTime object更改 DateTime 对象的时区
【发布时间】:2020-05-18 22:41:01
【问题描述】:

我有一个 Dart DateTime 对象。我需要更改时区,我们会说从东部到中部。问题是,我不希望它将时间设置回一小时,我想保留时间但只是更改时区。

【问题讨论】:

    标签: date dart timezone


    【解决方案1】:

    我想出了如何在不影响日期的情况下更改时区。使用以下代码:

    DateTime.parse(date.toString().substring(0, 23) + '-0500');
    

    这会将下一个日期的时区设置为 UTC-5。

    【讨论】:

    • 可能这会在解析时考虑偏移量,但从文档看来,对象本身除了 UTC 或本地时间之外不能锚定任何东西。 (isUtc 给了什么?)
    【解决方案2】:

    从您链接的文档页面:

    DateTime 对象在创建对象时锚定在 UTC 时区或当前计算机的本地时区。

    一旦创建,DateTime 对象的值和时区都不能更改。

    【讨论】:

      猜你喜欢
      • 2014-11-14
      • 1970-01-01
      • 2014-11-14
      • 2019-01-25
      • 1970-01-01
      • 2023-03-28
      • 2022-01-24
      • 2013-02-18
      • 2017-03-23
      相关资源
      最近更新 更多