///
///
///
@implementation TTMarkupStripper
///
- (void)dealloc {
TT_RELEASE_SAFELY(_strings);
[super dealloc];
}
///
///
#pragma mark -
#pragma mark NSXMLParserDelegate
///
- (void)parser:(NSXMLParser*)parser foundCharacters:(NSString*)string {
[_strings addObject:string];
}
///
- (NSData*) parser: (NSXMLParser*)parser
resolveExternalEntityName: (NSString*)entityName
systemID: (NSString*)systemID {
return [[[TTEntityTables sharedInstance] iso88591] objectForKey:entityName];
}
///
///
#pragma mark -
#pragma mark Public
///
- (NSString*)parse:(NSString*)text {
_strings = [[NSMutableArray alloc] init];
NSString* document = [NSString stringWithFormat:@"<x>%@</x>", text];
NSData* data = [document dataUsingEncoding:text.fastestEncoding];
NSXMLParser* parser = [[NSXMLParser alloc] initWithData:data];
parser.delegate = self;
[parser parse];
TT_RELEASE_SAFELY(parser);
NSString* result = [_strings componentsJoinedByString:@""];
TT_RELEASE_SAFELY(_strings);
return result;
}
///
///
@implementation TTMarkupStripper
///
- (void)dealloc {
TT_RELEASE_SAFELY(_strings);
[super dealloc];
}
///
///
#pragma mark -
#pragma mark NSXMLParserDelegate
///
- (void)parser:(NSXMLParser*)parser foundCharacters:(NSString*)string {
[_strings addObject:string];
}
///
- (NSData*) parser: (NSXMLParser*)parser
resolveExternalEntityName: (NSString*)entityName
systemID: (NSString*)systemID {
return [[[TTEntityTables sharedInstance] iso88591] objectForKey:entityName];
}
///
///
#pragma mark -
#pragma mark Public
///
- (NSString*)parse:(NSString*)text {
_strings = [[NSMutableArray alloc] init];
NSString* document = [NSString stringWithFormat:@"<x>%@</x>", text];
NSData* data = [document dataUsingEncoding:text.fastestEncoding];
NSXMLParser* parser = [[NSXMLParser alloc] initWithData:data];
parser.delegate = self;
[parser parse];
TT_RELEASE_SAFELY(parser);
NSString* result = [_strings componentsJoinedByString:@""];
TT_RELEASE_SAFELY(_strings);
return result;
}
