Конкатенация NSStrings Objective-C - PullRequest
0 голосов
/ 02 апреля 2011

Я абсолютный новичок в Objective-C, так что терпите меня. Вот как я объединяю свой URL:

id url      = [NSURL URLWithString:@"http://blahblah.com/gradient.jpg"];
id image    = [[NSImage alloc] initWithContentsOfURL:url];
id tiff     = [image TIFFRepresentation];

NSString *docsDir = [NSHomeDirectory() stringByAppendingPathComponent:  @"Desktop"];
NSString *fileToWrite = @"/test.tiff";
NSString *fullPath = [docsDir stringByAppendingString:fileToWrite];

[tiff writeToFile:fullPath atomically:YES];

Это работает, но кажется небрежным. Это идеальный способ объединения NSStrings?

Ответы [ 4 ]

3 голосов
/ 02 апреля 2011

Вы можете добавить несколько компонентов пути одновременно.Например:

NSString* fullPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Desktop/test.tiff"];

Вы также можете указать весь путь в одной строке:

NSString* fullPath = [@"~/Desktop/test.tiff" stringByExpandingTildeInPath];
3 голосов
/ 02 апреля 2011

stringByAppendingString: или stringWithFormat: в значительной степени это путь.

1 голос
/ 02 апреля 2011

Вы смотрели на NSMutableString ?

0 голосов
/ 02 апреля 2011

Общепринятым условием является использование [NSString stringWithFormat:...], однако оно не выполняет добавление пути (stringByAppendingPathComponent).

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