Étant donné un NSArray de NSStrings, existe-t-il un moyen rapide de les regrouper en un seul NSString (avec un séparateur)?
Réponses
Trop de publicités?
BJ Homer
Points
29168
-componentsJoinedByString:
sur NSArray devrait faire l'affaire.
Ben G
Points
2106
Il y a aussi cette variante, si votre tableau d'origine contient des objets Key-Value à partir desquels vous voulez seulement choisir une propriété (qui peut être sérialisée en tant que chaîne):
@implementation NSArray (itertools)
-(NSMutableString *)stringByJoiningOnProperty:(NSString *)property separator:(NSString *)separator
{
NSMutableString *res = [@"" mutableCopy];
BOOL firstTime = YES;
for (NSObject *obj in self)
{
if (!firstTime) {
[res appendString:separator];
}
else{
firstTime = NO;
}
id val = [obj valueForKey:property];
if ([val isKindOfClass:[NSString class]])
{
[res appendString:val];
}
else
{
[res appendString:[val stringValue]];
}
}
return res;
}
@end