0

私は持っている

 "<message xmlns=\"jabber:client\" type=\"chat\" to=\"3@.com\" from=\"4@.com/44b97a48-f761-4332-a7a6-734e8e3d81f2\" id=\"168AA10F-B3B1-430B-9EDF-2A6126161CF5\" timestamp=\"2014-03-29 01:23:16 +0000\"><body>Yt itygvgy glkbhlkblkblkblblibibilub</body><request xmlns=\"urn:xmpp:receipts\"></request></message>"

「to」属性の値を取得する必要があります。私が使う

         NSArray * children =  [queryElements children];
            NSArray *  attributes = [queryElements attributes];
            NSXMLElement *qq = children[1];

            NSXMLElement *resultElements = [qq elementForName: @"to" xmlns: @"jabber:client"];

            NSLog(@"TWST :\n%@", resultElements);

そして(ヌル)を得る。

私はこれを手に入れます

                NSArray * children =  [queryElements children];
           NSLog(@"children:\n%@ :\n", children);
            NSXMLElement *qq = children[1];
            NSArray * children2 =  [qq children];
            NSLog(@"22:\n%@ :\n", children2[0]); //body
            NSArray * children333 =  [qq attributes];
            NSLog(@"3333:\n%@ :\n", children333[2]); //from

もっと賢い方法はありますか?

4

1 に答える 1

1

配列からすべての属性が必要な場合は、次の方法を使用できます。

for (NSXMLElement * childrenElement in children) {
    NSString *id = [[childrenElement attributeForName:@"id"]stringValue];
    NSLog(@"print childrenElement id=====%@",id);        
}
于 2015-03-16T12:38:45.067 に答える