KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm using a class written by a blogger ( http://troybrant.net/blog/ ) that takes an XML string and spits out a NSDictionary. It's beautiful...works perfectly, except I end up with a weird configuration of newlines and white space at the beginning of many element values. I haven't been able to figure out why. I'm posting the class here so I can get a second pair of eyes...see if anyone notices anything suspect in the method he is using. // // XMLReader.m // #import "XMLReader.h" NSString *const kXMLReaderTextNodeKey = @"text"; @interface XMLReader (Internal) - (id)initWithError:(NSError **)error; - (NSDictionary *)objectWithData:(NSData *)data; @end @implementation XMLReader #pragma mark - #pragma mark Public methods + (NSDictionary *)dictionaryForXMLData:(NSData *)data error:(NSError **)error { XMLReader *reader = [[XMLReader alloc] initWithError:error]; NSDictionary *rootDictionary = [reader objectWithData:data]; [reader release]; return rootDictionary; } + (NSDictionary *)dictionaryForXMLString:(NSString *)string error:(NSError **)error { NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; return [XMLReader dictionaryForXMLData:data error:error]; } #pragma mark - #pragma mark Parsing - (id)initWithError:(NSError **)error { if ((self = [super init])) { errorPointer = error; } return self; } - (void)dealloc { [dictionaryStack release]; [textInProgress release]; [super dealloc]; } - (NSDictionary *)objectWithData:(NSData *)data { // Clear out any old data [dictionaryStack release]; [textInProgress release]; dictionaryStack = [[NSMutableArray alloc] init]; textInProgress = [[NSMutableString alloc] init]; // Initialize the stack with a fresh dictionary [dictionaryStack addObject:[NSMutableDictionary dictionary]]; // Parse the XML NSXMLParser *parser = [[NSXMLParser all
Tags (comma-separated)
Save Edits
Cancel