Search code examples
iphonexmlparsinggdataxml

GDataXml Parsing Issues in iPhone


here this is below the code i need to parse the section and Company Sub data Using GDataXml in iOS.

-<MainList>
    <FirstMessage>Right</FirstMessage>
    <SecondMessage>Wrong</SecondMessage>
    <Status>0</Status>
   -<CompanyList>
     -<Company>
         <Address1>12447 Hedges Run Drive</Address1>
         <Address2>#B-1 </Address2>
         <City>Lake Ridge</City> 
         <CompanyName>Starbucks</CompanyName>
         <CreatedBy>[email protected]</CreatedBy>
     -</Company>
      -<Company>
         <Address1>12447 Hedges Run Drive</Address1>
         <Address2>#B-1 </Address2>
         <City>Lake Ridge</City>
         <CompanyName>Starbucks</CompanyName>
         <CreatedBy>[email protected]</CreatedBy>
      -</Company>
   </CompanyList>
</MainList>

Here is My Try i am getting every thing fine but i am getting nothing in NSArray arr.

  NSArray *channels = [rootElement elementsForName:@"CompanyList"];  
  for (GDataXMLElement *icon in channels) {  
  NSArray *arr = [icon elementsForName:@"Company"];  
  if ([arr count]>0)  
  {  
        NSlog(@"Done");  
  }  
} 

Solution

  • Hello guys i figured it out as follows

    GDataXMLDocument *xmlDocument = [[GDataXMLDocument alloc]initWithData:xmlData options:0 error:&error];

    NSLog(@"Error:%@",[error description]);
    
    NSArray *getData = [[xmlDocument rootElement]elementsForName:@"CompanyList"];
    NSArray  *tempArray = [[NSMutableArray alloc]init];
    
    for(GDataXMLElement *e in getData)
    {
    
        NSArray *el = [e elementsForName:@"Company"];
    
        for (GDataXMLElement *e in el) {
            static int count =0;
            NSString    *testString = [[[e elementsForName:@"Address1"] objectAtIndex:0] stringValue];
            NSLog(@"Company  %d  : %@",count+1, testString);
    
        }