【问题标题】:How to search a directory of directories?如何搜索目录的目录?
【发布时间】:2016-05-26 23:24:32
【问题描述】:

这里是目录(原始plist形式):

Directory to be searched

我想要做的是:

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 没有问题。

【问题讨论】:

    标签: ios swift dictionary nsdictionary


    【解决方案1】:

    先看这一行

    let dict = pLData as! Dictionary&lt;String, NSDictionary&gt;

    哪个给你Dictionary&lt;String, NSDictionary&gt;,没问题

    然后是第一个for-loop

    for dict2 in 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 {
    
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2011-11-05
      • 2014-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-20
      • 1970-01-01
      • 2014-10-07
      相关资源
      最近更新 更多