Anexar nueva línea a cadena

Hola, estoy generando una cadena que consiste en inputs de text de campos de text.

NSString * lines = [NSString stringWithFormat:@"%@,%@,%@,%@,%@", [self.crabText text], [self.trawlText text], [self.trapText text], [self.vesselText text], [self.lengthText text]]; 

Genero la cadena anterior cuando el usuario selecciona un button "Generar CSV" UIB que sigue una IBAction. Sin embargo, entonces quiero borrar los campos de text y agregar las nuevas inputs pobladas en la parte superior de las anteriores. Sin embargo, solo las inputs del campo de text actual se rellenarán debido a que la function siempre crea una nueva instancia de la cadena de "líneas".

 lines = [NSString stringWithFormat: @"%@\n", lines]; 

Tengo esto trabajando poniendo todas las cadenas nuevas en una matriz, pero me preguntaba si era posible simplemente usar la misma cadena. Un ejemplo sería "1,1,1,1,1" "nueva línea" "2,2,2,2,2".

No hagas esto:

 NSString * lines = [NSString stringWithFormat:@"%@,%@,%@,%@,%@", [self.crabText text], [self.trawlText text], [self.trapText text], [self.vesselText text], [self.lengthText text]]; 

Hacer esto:

 NSArray *fields = @[[self.crabText text], [self.trawlText text], [self.trapText text], [self.vesselText text], [self.lengthText text]]; NSString *line = [fields componentsJoinedByString:@","]; 

Luego, unir dos líneas juntas:

 NSArray *lines = @[lineOne, lineTwo]; NSString *linesString = [lines componentsJoinedByString:@"\n"]; 

Sí, podría usar un NSMutableString y appendString para appendString cada vez.