iPhone Objects from NSDictionary PList -


in app have section load saved plist has 2 nested dictionaries this:

<?xml version="1.0" encoding="utf-8"?> <!doctype plist public "-//apple//dtd plist 1.0//en" "http://www.apple.com/dtds/propertylist-1.0.dtd"> <plist version="1.0"> <dict>     <key>1</key>     <dict>         <key>color</key>         <string>yellow</string>         <key>lang</key>         <string>us</string>         <key>name</key>         <string>peter</string>         <key>uid</key>         <string>1</string>     </dict>     <key>2</key>     <dict>         <key>color</key>         <string>blue</string>         <key>lang</key>         <string>us</string>         <key>name</key>         <string>josh</string>         <key>uid</key>         <string>2</string>     </dict>     <key>3</key>     <dict>         <key>color</key>         <string>red</string>         <key>lang</key>         <string>de</string>         <key>name</key>         <string>susan</string>         <key>uid</key>         <string>3</string>     </dict> </dict> </plist> 

now want access string outer dictionary key 2, value inner key color (blue) tried make 2 loops, , works outer dictionary can't access inner

nsmutabledictionary *saveddata = [nsmutabledictionary dictionarywithcontentsoffile:path]; // contains data plist  (int x=0; x<[saveddata count]; x++) {     nsstring *itemnumber = [nsstring stringwithformat:@"%d", x+1];      //this prints out correct inner dictionary     nslog(@"item#%@: %@",itemnumber,[saveddata objectforkey:itemnumber]);       (nsdictionary *dict in [saveddata objectforkey:itemnumber]) {         //prints out color, lang, uid, no key-value pairs          nslog(@"dict: %@",dict);     } } 

i'd know how directly access key value pairs inside inner dictionary, give me kick in right direction, please?

how this:

nsstring *bluecolorstring = [[saveddata objectforkey:@"2"] objectforkey:@"color"]; 

the trick nest method calls, first 1 [saveddata objectforkey:2] returns inner dictionary object on can call method again. hope works intended.

best, robin


Comments

Popular posts from this blog

unicode - Are email addresses allowed to contain non-alphanumeric characters? -

C#: Application without a window or taskbar item (background app) that can still use Console.WriteLine() -

c++ - Convert big endian to little endian when reading from a binary file -