Análisis de caracteres especiales en JSON

Ahora estoy analizando con NSJSONSerialization

NSData *jsonData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"url"]];
NSError *jsonError = nil;
id jsonObject = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&jsonError];


NSDictionary *jsonDictionary = (NSDictionary *)jsonObject;

[self setTableData:jsonDictionary];

Pero no analizará mi JSON debido a caracteres especiales en el JSON como la letra 'u' cuando quito el 'u' desde el JSON está funcionando correctamente. Probé el código anterior y:

options:utf8...

alguien sabe como puedo arreglar esto?

preguntado el 24 de diciembre de 12 a las 15:12

Su cadena está mal codificada/convertida. Si se codifica correctamente y el UTF8 se convierte a Unicode, JSON no tendrá ningún problema. -

2 Respuestas

Intente usar NSString con el que puede especificar explícitamente la codificación. Ex:

NSString *string = [NSString stringWithContentsOfURL:webURL encoding:NSUTF8StringEncoding error:&error];

Luego puede convertir el objeto NSString a NSData y luego hacer la serialización JSON.

Respondido el 24 de diciembre de 12 a las 20:12

Trata de cambiar NSJSONReadingMutableContainers con NSJSONLecturaMutableHojas. Esto me resolvió un problema similar.

Respondido el 24 de diciembre de 12 a las 15:12

¿Puede verificar que sus datos están en formato UTF-8? Si no, conviértalo primero antes de llamar a NSJSONSerialization - Misha

@Frenck: lea los datos en un NSString antes de decodificar JSON y vea lo que obtiene. - Lamidas calientes

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.