2009-11-19 2 views
0

Я работаю над этим несколько дней без везения. Я пытаюсь разобрать коллекцию пар ключ/значение из NSDicitonary, но, похоже, он очень чувствителен к дефису в имя ключа. Ниже приведен пример данных .. Если я пытаюсь получить доступ к любому из полей с дефисом, используя код, приведенный ниже, я получаю следующее сообщение об ошибке:дефис в ключе NSDictionary

unrecognized selector sent to instance

Любые предложения?

NSString *param = [[NSString alloc] initWithFormat:@" url-name like %@",url ]; 
NSPredicate *predicate = [NSPredicate predicateWithFormat:param]; 
NSArray *results = [aCompanies filteredArrayUsingPredicate:predicate]; 

<company> 
    <address-one></address-one> 
    <address-two></address-two> 
    <city></city> 
    <country></country> 
    <id type="integer">11899</id> 
    <name>Aceara</name> 
    <phone-number-fax></phone-number-fax> 
    <phone-number-office></phone-number-office> 
    <state></state> 
    <time-zone-id>Central Time (US &amp; Canada)</time-zone-id> 
    <url-name>ACEARA</url-name> 
    <uuid>7cc52da5-6783-4c59-9c60-b8fe96f2110c</uuid> 
    <web-address>WWW.ACEARA.COM</web-address> 
    <zip></zip>  
    <can-see-private type="boolean">false</can-see-private> 
</company> 
+0

Там нет необходимости выделять строку, а затем назначить его в качестве формата предиката. Просто создайте предикат напрямую: 'NSPredicate * predicate = [NSPredicate predicateWithFormat: @" 'url-name' like '% @' ", url];' –

ответ

3

объемного звучания струны с кавычками, чтобы избежать проблем, например .:

initWithFormat:@"'url-name' like '%@'" 
Смежные вопросы