Note that there are some explanatory texts on larger screens.

plurals
  1. POfaster xml reading required in iPhone
    text
    copied!<p>I have following code - methods to read xml files. But it works very slow for me. Isn't there any sufficient way to fetch &amp; read data faster.</p> <pre><code>if(connectionRemaining) { [self LoadingPopUp]; NSURL *tmpURl=[NSURL URLWithString:[NSString stringWithFormat:@"%@getcategory.php",[iGolfAppDelegate getServerPath]]]; NSMutableURLRequest *theRequest=[NSMutableURLRequest requestWithURL:tmpURl]; NSURLConnection *conn=[[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; if(conn) myWebData=[[NSMutableData data] retain]; connectionRemaining=NO; } -(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { [myWebData setLength: 0]; } -(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { [myWebData appendData:data]; } -(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { [connection release]; } -(void)connectionDidFinishLoading:(NSURLConnection *)connection { // NSString *theXML = [[NSString alloc] initWithBytes: [myWebData mutableBytes] length:[myWebData length] encoding:NSUTF8StringEncoding]; // NSLog(@"%@",theXML);[theXML release]; if( myXMLParser ) [myXMLParser release]; myXMLParser = [[NSXMLParser alloc] initWithData: myWebData]; [myXMLParser setDelegate: self]; [myXMLParser setShouldResolveExternalEntities: YES]; [myXMLParser parse];[connection release];[myWebData release]; } #pragma mark #pragma mark XMLParsing Methods -(void)parser:(NSXMLParser*)parser didStartElement:(NSString*)elementName namespaceURI:(NSString*)namespaceURI qualifiedName:(NSString*)qualifiedName attributes:(NSDictionary*)attributeDict { if([elementName isEqualToString:@"category"]) categoryArray=[[NSMutableArray alloc]init]; else if([elementName isEqualToString:@"Prop_Category"]) aCategory=[[Category alloc] init]; } -(void)parser:(NSXMLParser*)parser foundCharacters:(NSString*)string { if(!currentElementValue) currentElementValue=[[NSMutableString alloc] initWithString:string]; else [currentElementValue appendString:string]; } -(void)parser:(NSXMLParser*)parser didEndElement:(NSString*)elementName namespaceURI:(NSString*)namespaceURI qualifiedName:(NSString*)qualifiedName { if([elementName isEqualToString:@"category"]) { [LoadingAlert dismissWithClickedButtonIndex:0 animated:YES]; [LoadingAlert release];[self categoryPickerDiplay]; return; } else if([elementName isEqualToString:@"Prop_Category"]) { [categoryArray addObject:aCategory];[aCategory release];aCategory=nil; } else{ [aCategory setValue:currentElementValue forKey:elementName]; [currentElementValue release];currentElementValue=nil; } </code></pre> <p>}</p> <p>Let me clarify my question again.</p> <p>I have observed that this way of reading xml is not sufficient. By using this way iPhone loads data very slowly. Because, iphone will read &amp; compare each tag every time.</p> <p>I want some faster XML Loading &amp; Parsing.</p> <p>Thanks in advance for sharing your knowledge with me</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload