2014-01-10 2 views
1

.plist가 너무 크기 때문에 내 앱이 거부되어 SQL. DB를 SQLite DB로 변환하려고합니다.Plist To SQLITE

저는 며칠 동안 노력해 왔지만 여전히 이것을 변환하는 방법을 모릅니다. 처음에는 변환 된 것을 찾으려고했지만 어떤 것도 찾을 수 없으므로 열거 형으로 코드를 변환하려하지만 올바른 결과를 얻을 수는 없습니다.

은 누구도 날 SQLite는 (단지 내가 FMDB를 사용하는거야 이후이 엑스 코드에서 쉽게 구현할 수있을 것, 필요한 경우 SQL INSERT 물건과 관계가 필요합니다)이를 변환 할 수 없습니다 :

<array> 
<dict> 
    <key>State</key> 
    <string>Alabama</string> 
    <key>Area code</key> 
    <dict> 
     <key>205</key> 
     <array> 
      <dict> 
       <key>City</key> 
       <string>Birmingham, AL</string> 
       <key>County</key> 
       <string>Jefferson</string> 
      </dict> 
      <dict> 
       <key>City</key> 
       <string>Birmingham, AL</string> 
       <key>County</key> 
       <string>Shelby</string> 
      </dict> 
     </array> 
     <key>251</key> 
     <array> 
      <dict> 
       <key>City</key> 
       <string>Mobile, AL</string> 
       <key>County</key> 
       <string>Mobile</string> 
      </dict> 
      <dict> 
       <key>City</key> 
       <string>Atmore, AL</string> 
       <key>County</key> 
       <string>Escambia</string> 
      </dict> 
     </array> 
    </dict> 

    <key>Zip code</key> 
    <array> 
     <dict> 
      <key>City</key> 
      <string>Wetumpka</string> 
      <key>County</key> 
      <string>Elmore</string> 
      <key>Zip code</key> 
      <string>36093</string> 
     </dict> 
     <dict> 
      <key>City</key> 
      <string>Winfield</string> 
      <key>County</key> 
      <string>Fayette</string> 
      <key>Zip code</key> 
      <string>35594</string> 
     </dict> 
    </array> 
</dict> 

상위 배열에는 주 사전이 포함되어 있습니다 (이것은 알라바마 상태이며 모든 상태가 포함되지만 예를 들어 충분해야 함).

감사합니다.

+0

또한 To-Core-Data는 누구든지 도움을 줄 수 있다면 도움이 될 것입니다. 감사합니다 –

+0

SQLite에 대해 아는 것이 있습니까? 어떻게 원래 XML 데이터를 만들었습니까? (내가 알기에 "통조림"SQLite DB를 제공하기를 원하기 때문에 데스크톱 시스템에 구축하고 싶을 것입니다. 원래 데이터에서 시작할 수도 있습니다.) –

답변

1

코어 데이터로 마이그레이션하려고합니다. 모델을 프로젝트에 추가하면 파일 마법사의 "핵심 데이터"아래에 있습니다.

두 개의 엔티티가 필요합니다. State와 AreaCode; State는 AreaCode 엔티티와 toMany 관계를 유지합니다. 이 엔티티가 모델 작성기에서 생성되면이를 내보낼 수 있고 Xcode가 클래스를 생성합니다.

현재 plist를 직접 마이그레이션하려는 경우; 가장 좋은 방법은 plist를 사전으로 여는 것입니다. 모든 국가 사전에 대해 initWithEntity :를 호출하고 해당 속성에 대해 - [setValue : forKey :]를 사전에서 수행합니다. 그런 다음 개체 컨텍스트를 저장하면 모든 것이 유지됩니다.

+0

감사합니다. –