Получение строки из NSDictionary, вложенной в файл plist - PullRequest
1 голос
/ 31 января 2010

Я пытаюсь получить строку из файла plist, который содержит вложенный словарь. Это листинг:

<dict>
    <key>DataPoints</key>
    <array>
        <dict>
            <key>source</key>
            <string>BloomBerg</string>
            <key>date</key>
            <date>2010-01-31T14:54:13Z</date>
            <key>value</key>
            <integer>1233</integer>
        </dict>
        <dict>
            <key>source</key>
            <string>BloomBerg</string>
            <key>date</key>
            <date>2010-02-02T14:54:13Z</date>
            <key>value</key>
            <integer>1235</integer>
        </dict>
        <dict>
            <key>source</key>
            <string>BloomBerg</string>
            <key>date</key>
            <date>2010-01-31T14:54:13Z</date>
            <key>value</key>
            <integer>1230</integer>
        </dict>
    </array>
</dict>

Вот мой код:

NSString *path = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"sampledata.plist"];
NSDictionary* plotDictionary = [[NSDictionary dictionaryWithContentsOfFile:path] retain];
NSArray* plotData = [plotDictionary objectForKey:@"DataPoints"];

NSLog(@"Got the dict %d",[plotData count]);

NSDictionary* plotPoint = [plotData objectAtIndex:1];

NSLog(@"Got the point %d",[plotPoint count]);

NSString* source = [plotPoint objectForKey:@"source"]; 
NSLog(@"...", source);

Я получаю количество массивов и dicts, но не значение строки. Вероятно, что-то делает не так ...

1 Ответ

3 голосов
/ 31 января 2010

Последняя строка, которую вы поставили NSLog(@"…", source);. Разве ты не хочешь NSLog(@"%@", source);?

...