Pregunta

Tengo una NSMutableDictionary con algunos valores en ella, y que necesito para unirse a las claves y valores en una cadena, de manera

> name = Fred
> password = cakeismyfavoritefood
> email = myemailaddress@is.short

se convierte en name=Fred&password=cakeismyfavoritefood&email=myemailaddress@is.short

¿Cómo puedo hacer esto? ¿Hay una manera de unirse a NSDictionaries en cadenas?

¿Fue útil?

Solución

Se puede hacer fácilmente que la enumeración de claves de diccionarios y objetos:

NSMutableString *resultString = [NSMutableString string];
for (NSString* key in [yourDictionary allKeys]){
    if ([resultString length]>0)
       [resultString appendString:@"&"];
    [resultString appendFormat:@"%@=%@", key, [yourDict objectForKey:key]];
}

Otros consejos

Muy misma pregunta que Convertir una NSDictionary en una cadena utilizando bloques?

NSMutableArray* parametersArray = [[NSMutableArray alloc] init];
[yourDictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
    [parametersArray addObject:[NSString stringWithFormat:@"%@=%@", key, obj]];
}];
NSString* parameterString = [parametersArray componentsJoinedByString:@"&"];
[parametersArray release];
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top