这是目录(以原始的plist形式):
要搜索的目录
我想做的是:
func getTaxWithZip(zip: Int) {
let path = NSBundle.mainBundle().pathForResource("NCZipCode", ofType: "plist")
let pLData = NSDictionary(contentsOfFile: path!)
let dict = pLData as! Dictionary<String, NSDictionary>
for dict2 in dict {
for item in dict2 {
}
}
}我在for item in dict2上收到了这个错误
Type '(String, NSDictionary)' does not conform to protocol 'SequenceType'如果我试图将其更改为“字典”,则会出现以下错误:
Cast from '(String, NSDictionary)' to unrelated type 'Dictionary<String, NSDictionary>' always fails其目标是查询plist键"ZipCode“以获得邮政编码。
我能够站起来‘让pLData = NSDictionary(contentsOfFile: path!)’成功,所以访问plist没有问题。
发布于 2016-02-15 22:06:59
先看看这条线
let dict = pLData as! Dictionary<String, NSDictionary>
它给你一个Dictionary<String, NSDictionary>,它没有问题
然后是第一个for-loop
for dict2 in dict {
...
}当您通过dict循环时,每个元素dict2实际上是一个元组(String, Dictionary)。
然后,您的第二个for-loop试图循环一个元组,这不是一个SequenceType。
你需要做的是:
for (str, dict2) in dict {
for item in dict2 {
}
}或
for dict2 in dict {
for item in dict2.1 {
}
}https://stackoverflow.com/questions/35419738
复制相似问题