【发布时间】:2018-11-03 09:57:35
【问题描述】:
我有问题 我想从 plist 文件中获取数据并将其放入数组变量中,但它不起作用
let path = Bundle.main.path(forResource: "SampleData", ofType: "plist")
let dataArray = NSArray(contentsOfFile: path!)!
但它不起作用,并且 NSArray 返回 nil 时出现运行时错误。
【问题讨论】:
-
嗯,很明显 - 如果你想读取一个数组,那么 必须 在 plist 中是一个数组,而不是字典。
-
不要在 Swift 中使用
NSArray/NSDictionary来读取属性列表文件。使用Data和PropertyListSerialization或者——更好的是——使用PropertyListDecoder解码结构中的数据。