【发布时间】:2016-09-29 16:21:30
【问题描述】:
我正在尝试在 Swift 3 中从 Data 读取 property list,但我无法实现。
我尝试过这样的事情:
let datasourceDictionary = try! PropertyListSerialization.propertyList(from: data!, options: [PropertyListSerialization.ReadOptions], format: nil) as! Dictionary
我得到了这个错误:
无法将类型“PropertyListSerialization.ReadOptions.Type”(又名“PropertyListSerialization.MutabilityOptions.Type”)的值转换为预期的元素类型“PropertyListSerialization.MutabilityOptions”
然后我尝试了类似以前在 Swift 1.2 上做的事情:
let datasourceDictionary = try! PropertyListSerialization.propertyList(from: data!, options: [PropertyListSerialization.MutabilityOptions.immutable], format: nil) as! Dictionary
我得到了这个错误:
'immutable'不可用:使用[]构造一个空的选项集
然后我尝试了这个:
let datasourceDictionary = try! PropertyListSerialization.propertyList(from: data!, options: [], format: nil) as! Dictionary
我得到了这个错误:
“[Any]”不能转换为“PropertyListSerialization.ReadOptions”(又名“PropertyListSerialization.MutabilityOptions”)
如何从 Swift 3 中的“数据”中读取 property list 文件,或者有什么方法可以做到这一点?
【问题讨论】:
-
选项值真的应该是一个数组吗?
-
@PhillipMills 在这种情况下,它是一个空的
OptionSet,而不是一个数组。