Отдельный файл с расширением файла Какао? - PullRequest
1 голос
/ 04 сентября 2011

Я использую метод writeToFile:atomically: для записи некоторых зашифрованных данных в текстовый файл. Проблема в том, что файл, который необходимо сохранить, должен быть файлом, зашифрованным пользователем, с расширением, которое я выбрал. Вот что у меня пока так:

[encryptedData writeToFile:[[NSHomeDirectory() stringByAppendingPathComponent:@"Desktop"] 
    stringByAppendingPathComponent:@"encryptedfile.txt.kry"] atomically:YES];
                                           ^//fileName here

Как видите, зашифрованное имя файла жестко закодировано как encryptedfile.txt.kry. Но, скажем, пользователь выбирает файл «test.avi» для шифрования, зашифрованный файл, который записывается на рабочий стол, должен называться test.avi.kry. Так что должно быть ofType :, как в NSBundle. Я знаю, что есть некоторые методы NSString, которые я могу использовать, но забыл.

Спасибо!

1 Ответ

1 голос
/ 04 сентября 2011

Разве вы не можете просто добавить .kry к имени файла?

Если у вас есть путь и вы хотите просто указать имя файла, вы можете использовать - (NSString *)lastPathComponent:

NSString *filename = [filePath lastPathComponent];
[encryptedData writeToFile:[[NSHomeDirectory() stringByAppendingPathComponent:@"Desktop"] 
    stringByAppendingPathComponent:[filename stringByAppendingString:@".kry"] atomically:YES];

Если вы хотите имя файла без расширения, вы можете использовать - (NSString *)stringByDeletingPathExtension:

NSString *filename = [[filePath lastPathComponent] stringByDeletingPathExtension];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...