2014-11-25 6 views
0

중요한 데이터를 저장하는 앱에 .plist가 있습니다. 사전 업데이트 plist - swift

  • 설정 - - 사전
    1. 설정 1 - 배열
    2. 설정 2 - 배열
    1. 목록 항목
    2. 루트 : 그것은 다음과 같은 계층으로 나누어됩니다 3.1 및 3.2 배열에 데이터를 쓰려면 어떻게해야합니까? 3 배열에 데이터를 추가 할뿐입니다. 나는 다음과 같은 코드를 사용하여 데이터를 읽고 작동합니다.

      if let path = NSBundle.mainBundle().pathForResource("SettingsList", ofType: "plist") { 
          if let dict = NSDictionary(contentsOfFile: path) as? Dictionary<String, AnyObject> { 
           // println(dict[settings!][setting1, String]) 
      
           settingsArray = dict[settings!]![setting1!] as Array 
      
           println(settingsArray) 
          } 
      } 
      

    답변

    2

    사전 대신 변경 가능한 사전을 사용해야합니다.

    1. 변경이 라인 : if let dict = NSDictionary(contentsOfFile: path) as? Dictionary<String, AnyObject>이 용이한지를 만들기 위해 당신이해야 코드에 따르면

      func writeToFile(_ path: String, atomically atomically: Bool) -> Bool 
      

      : 당신이 완료 할 때 사전의 업데이트 데이터와, 당신은 writeToFile 방법을 사용하여 파일로 변경 가능한 사전을 쓰기 사전 : let dict = NSMutableDictionary(contentsOfFile: path)

    2. 업데이트 그것은
    3. 쓰기 그것을 파일에 : dict?.writeToFile(path, atomically: true)
    +0

    단순히 NSDictionary (contentsOfFile : path)를 NSMutableDictionary (contentsOfFile : path)로 변경하면됩니다. 고마워 알리 – aalesano

    관련 문제