gpt4 book ai didi

swift - 致命异常 : NSInternalInconsistencyException while using formatter to convert string to date

转载 作者:行者123 更新时间:2023-12-02 07:32:40 24 4
gpt4 key购买 nike

我在使用 ISO8601DateFormatter 和 formatOptions 时收到 Crashlytics 崩溃报告 .withFractionalSeconds像这样解析字符串

2017-01-23T10:12:31Z

or

2017-01-23T10:12:31.484Z

or

2017-01-23T10:12:31.484221Z


到目前为止,使用此代码:
if #available(iOS 11.0, *) {
let formatter = ISO8601DateFormatter()
formatter.formatOptions.insert(.withFractionalSeconds)
result = formatter.date(from: string)
}
我收到的崩溃消息是:

Fatal Exception: NSInternalInconsistencyException

Invalid parameter not satisfying: formatOptions == 0 || !(formatOptions & ~(NSISO8601DateFormatWithYear | NSISO8601DateFormatWithMonth | NSISO8601DateFormatWithWeekOfYear | NSISO8601DateFormatWithDay | NSISO8601DateFormatWithTime | NSISO8601DateFormatWithTimeZone | NSISO8601DateFormatWithSpaceBetweenDateAndTime | NSISO8601DateFormatWithDashSeparatorInDate | NSISO8601DateFormatWithColonSeparatorInTime | NSISO8601DateFormatWithColonSeparatorInTimeZone | NSISO8601DateFormatWithFullDate | NSISO8601DateFormatWithFullTime | NSISO8601DateFormatWithInternetDateTime))

最佳答案

似乎是由选项 .withFractionalSeconds 引起的崩溃在 iOS 11.0.* 和 11.1.* 中。

要解决此问题,您应该更改 #available(iOS 11.0, *)#available(iOS 11.2, *)
更多详情:

虽然结构 ISO8601DateFormatter.Options自 iOS 10.0+ 起可用,选项本身 static var withFractionalSeconds: ISO8601DateFormatter.Options { get }自 iOS 11.0+ 起可用。 Read HereHere

使用选项 .withFractionalSeconds “崩溃到 11.2。它在 11.2+ 中修复”。
关于这个 comment

关于swift - 致命异常 : NSInternalInconsistencyException while using formatter to convert string to date,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59892013/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com