NSString concaténant des NSArray de NSString

Philippe49Philippe49 Membre
02:29 modifié dans API AppKit #1
J'ai trois NSArray a1, a2, a3 résultats de keyPath différents sur la même NSArray source. Je veux faire une chaà®ne ainsi formatée
"a1[0] a2[0] a3[0] \n a1[1] a2[1] a3[1]\n a1[2] a2[2] a3[2]\n ... "

Avez-vous une astuce ou je continue à  tout faire à  la main (comme suit) ? 


NSArray * companyNames=[allEmployees valueForKeyPath:@&quot;dept.company.companyName&quot;];<br />NSArray * deptNames=[allEmployees valueForKeyPath:@&quot;dept.deptName&quot;];<br />NSArray * names=[allEmployees valueForKeyPath:@&quot;name&quot;];			<br />NSMutableString * string=[NSMutableString string];<br />for(int i=0;i&lt;[allEmployees count];i++) {<br />	[string appendFormat:@&quot;%@ &gt; %@ &gt; %@&#092;n&quot;,[companyNames objectAtIndex:i],[deptNames objectAtIndex:i],[names objectAtIndex:i]];<br />}<br />NSLog(string);<br />

Réponses

  • schlumschlum Membre
    02:29 modifié #2
    C'est quoi qui te dérange dans le code au-dessus ?
  • AliGatorAliGator Membre, Modérateur
    02:29 modifié #3
    Tu peux pas créer genre une propriété (trancient, dans le cadre de CoreData ;)) qui va te générer la chaà®ne pour l'index i ? genre te générer ("%@ > %@ > %@",companyName,deptName,name) ? Et ensuite tu récupères via le bon keyPath cette propriété qui va te renvoyer donc un NSArray de chaà®nes déjà  toutes faites, qu'il te suffira de concaténer avec un componentsJoinedByString...

    Toute la question étant de savoir si tu peux coder cet opérateur transcient... là  j'ai du mal à  visualiser ?
  • Philippe49Philippe49 Membre
    02:29 modifié #4
    dans 1242934472:

    C'est quoi qui te dérange dans le code au-dessus ?


    Rien de spécial, je me demande simplement si je ne passes pas à  côté d'un truc simplificateur du Key Value Coding
  • Philippe49Philippe49 Membre
    02:29 modifié #5
    dans 1242935139:

    Tu peux pas créer genre une propriété (trancient, dans le cadre de CoreData ;)) qui va te générer la chaà®ne pour l'index i ? genre te générer ("%@ > %@ > %@",companyName,deptName,name) ? Et ensuite tu récupères via le bon keyPath cette propriété qui va te renvoyer donc un NSArray de chaà®nes déjà  toutes faites, qu'il te suffira de concaténer avec un componentsJoinedByString...

    Si avec les bindings, on peut utiliser les Display Pattern Value pour faire cela, mais là  j'en suis à  voir comment intervenir dans Core Data via du code.
    componentsJoinedByString tiens je l'avais jamais utilisé celui-là  !   
Connectez-vous ou Inscrivez-vous pour répondre.