un peu en retard, mais j'ai découvert le même problème et j'ai aussi découvert un correctif ou une solution de contournement.
donc, pour toute personne qui trébuche sur cette obtiendrez une réponse :)
donc, le problème, c'est quand vous lisez une chaîne de caractères à partir d'un fichier \n sera de 2 caractères à la différence dans xcode, le compilateur reconnaît \n comme un.
j'ai donc étendu la classe NSString comme ceci:
"NSString+newLineToString.h":
@interface NSString(newLineToString)
-(NSString*)newLineToString;
@end
"NSString+newLineToString.m":
#import "NSString+newLineToString.h"
@implementation NSString(newLineToString)
-(NSString*)newLineToString
{
NSString *string = @"";
NSArray *chunks = [self componentsSeparatedByString: @"\\n"];
for(id str in chunks){
if([string isEqualToString:@""]){
string = [NSString stringWithFormat:@"%@",str];
}else{
string = [NSString stringWithFormat:@"%@\n%@",string,str];
}
}
return string;
}
@end
Comment l'utiliser:
rootDict = [[NSDictionary alloc]initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"yourFile" ofType:@"plist"]];
NSString *string = [[rootDict objectForKey:@"myString"] newLineToString];
son rapide et sale, sachez que \\n dans votre fichier ne sera pas reconnaître que \n donc, si vous avez besoin d'écrire \n sur le texte que vous avez à modifier la méthode :)