NSXMLParser проблема - PullRequest
       3

NSXMLParser проблема

0 голосов
/ 07 мая 2011

Я не знаю, как использовать NSXMLParser. У меня есть этот xml с сервера, и мне нужно сообщение с идентификатором пользователя.

<?xml version="1.0" encoding="UTF-8"?><response value="1">
    <user id="100">
    <field name="name">DATO</field>
    <field name="lastname">DATO</field>
    <field name="country">DATO</field>
    <field name="usstate">DATO</field>
    <field name="email">DATO</field>

    </user>
    <message>Login successfully</message>
    </response>

Я получил это далеко

 NSXMLParser *parser = [[NSXMLParser alloc] initWithData:myResult];
[parser setDelegate:self]; // The parser calls methods in this class
[parser setShouldProcessNamespaces:NO]; // We don't care about namespaces
[parser setShouldReportNamespacePrefixes:NO]; //
[parser setShouldResolveExternalEntities:NO]; // We just want data, no other stuff

[parser parse]; // Parse that data..
[parser release];

И реализовал этот метод:

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {
//NSLog(@"user");
if ([elementName isEqualToString:@"user"])
{
    NSLog(@"user");
    //NSString(@"");
}
}

Я знаю, что это легко, но я не могу найти ответ. Спасибо.

1 Ответ

0 голосов
/ 07 мая 2011

Значение идентификатора можно найти в attributeDict, который передается анализатору: didStartElement: namespaceURI: qualName: attribute: method.Чтобы получить доступ к значению атрибута id, это должно работать:

[attributeDict objectForKey:@"id"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...