Добавить строку NSString в качестве первой строки другой строки NSString - PullRequest
0 голосов
/ 18 января 2011

У меня есть две строки NSSt, A и B.

Я бы хотел, чтобы A стало B \ nA.

Как мне это сделать?


Если в методе, который я использую,

NSString *string_B = [[NSString alloc] initWithString:@"something_from_a_DB"];
NSString *string_A = [[NSString alloc] initWithString:@"something_from_a_DB"];

if (aTrueCondition) {
   string_C = [NSString stringWithFormat:@"%@\n%@", string_B, string_A];
} else {
   string_C = string_A;
}

is string_C = string_A;утечка памяти или это хорошо?


Я добавил [string_A release], так как string_C является сохраняемым свойством.Теперь это работает.

Ответы [ 3 ]

5 голосов
/ 18 января 2011

Это способ собрать их вместе:

NSString *newString = [NSString stringWithFormat:@"%@\n%@", stringB, stringA];

Вторая часть - «Становление newString». Это трудно сделать, так как обычные строки неизменны в Какао. Лучшее, что вы можете сделать, это выбросить старый A и указать точку A на новую строку:

NSString *strA = @"foo";
NSString *strB = @"bar";
strA = [NSString stringWith…];

Только будьте осторожны, чтобы не протечь A:

NSString *strA = [[NSString alloc] initWithString:@"foo"];
strA = [NSString stringWith…]; // this is a leak
0 голосов
/ 18 января 2011
NSString *stringA = [NSString stringWithFormat:@"%@\n%@", stringB, stringA];
0 голосов
/ 18 января 2011
NSString *str=[NSString stringWithFormat:@"%@\n%@",B,A];

используйте это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...