Sustituir códigos HTML por el caracter correspondiente de un NSString

Si por alguna razón tienes un NSString que contiene códigos HTML  (como por ejemplo á en vez de á, o ñ en vez de ñ o & en vez del ampersand &) y quieres que se te muestre el caracter equivalente en vez del código, la forma más fácil de conseguirlo es usar un NSAttributedString de la siguiente manera

NSString * stringConCodigosHTML = @"Saludos desde España. ¿Qué tal están?";

NSData *stringData = [stringConCodigosHTML dataUsingEncoding:NSUTF8StringEncoding];

NSDictionary *options = @{NSDocumentTypeDocumentAttribute:NSHTMLTextDocumentType};
NSAttributedString *decodedString;
decodedString = [[NSAttributedString alloc] initWithData:stringData
options:options
documentAttributes:nil
error:nil];

NSLog(@”%@”,decodedString.string);//sacará por consola “Saludos desde España. ¿Qué tal están?”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *