DateFormatter.date(from: String) vs Locale

问题描述

我想寻求一些帮助,以了解可能导致我的 DateFormatter 失败的原因...

  1. 应用以字符串形式从服务器接收数据(例如“2020-12-13 02:54:36 UTC”)
  2. 应用将字符串解析为日期
  3. 应用支持英语和西班牙语本地化(不相关?)

代码

DateFormatter(所有设置):

dateFormat = "yyyy-MM-dd HH:mm:ss zzz"

  • 通常所有日期都以 UTC 返回,但使用 'zzz' 还可以涵盖其他时间格式,如 CDT 等......我们曾在服务器端有些混淆......

问题: 我收到了一个用户(使用西班牙语言环境)遇到日期解析器故障的日志。但无论如何我都无法重现这个......(电话设置为 EN / ES - UTC 和 CDT 时区的日期解析都可以)。

服务器响应:

{“创建日期”: "2021-05-14 06:07:55 UTC",}

where date(from string:) 对于上述日期返回 nil。

  • 我做错了吗?
  • 改进? (即设置 formatter.locale = "en_EN" 会有帮助吗?服务器日期格式是固定的。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)