【问题标题】:Error while converting C# date string into swift3 date将 C# 日期字符串转换为 swift3 日期时出错
【发布时间】:2017-11-05 10:36:08
【问题描述】:

在我的一个应用程序中,我从 RESTful api 获取日期为“04112017182149”。

我尝试将其转换为我的内部用户的快速日期,如下面的 sn-p 所示。

let receivedDate = "04112017182149"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd" 
print((dateFormatter.date(from: receivedDate))!)

它在展开可选值时抛出一个致命错误,因为 Unexpectedly found nil。

我曾尝试将日期格式化字符串更改为“dd-MMM-yyyy HH:mm:ss”,但没有用。

【问题讨论】:

  • 也许你应该尝试创建一个实际上匹配你收到的数据04112017182149的格式。
  • @luk2302 这就是我面临的问题,我没有确切的想法去做。
  • 查看日期格式。日期字符串中是否有连字符...?年份 (yyyy) 在字符串的开头吗?

标签: swift nsdateformatter


【解决方案1】:

正确的日期格式是

ddMMyyyyHHmmss

【讨论】:

  • 请注意,将日期格式化程序语言环境设置为“en_US_POSIX”需要解析该字符串,否则如果用户更改时间格式 12-24 小时或由于设备而更改,它将导致应用程序崩溃语言环境出租。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-02-04
  • 1970-01-01
  • 1970-01-01
  • 2011-11-28
  • 2019-12-14
  • 2022-01-26
相关资源
最近更新 更多