Поиск файла в песочнице iPhone - PullRequest
2 голосов
/ 13 апреля 2011

В начале моего приложения пользователь записывает свой голос, который затем сохраняется как «записано. Wav» в песочнице.Как позже создать строку, указывающую ее местоположение?Мне бы хотелось что-то похожее на:

/var/folders/u6/u6pKbm2MFriwajkdt-OQME+++TI/-Tmp-/recorded.wav

Спасибо,

Имейте в виду, что это для устройства iPhone и симулятора.

Ответы [ 2 ]

6 голосов
/ 13 апреля 2011

NSHomeDirectory() возвращает путь к песочнице вашего приложения. После этого вы можете получить доступ к любому файлу или каталогу внутри него.

NSString *home = NSHomeDirectory();
NSString *documentsPath = [home stringByAppendingPathComponent:@"Documents"];

Существует также NSTemporaryDirectory(), который возвращает путь к временной папке, определенной для вашего приложения. Обратите внимание: при запуске приложения в симуляторе NSTemporaryDirectory() возвращает общесистемный каталог.


Если вам нравится более общее решение, посмотрите документацию по функции NSSearchPathForDirectoriesInDomains().

2 голосов
/ 13 апреля 2011

Вы можете получить путь к вашему файлу с помощью NSSearchPathForDirectoriesInDomains функции основания как таковой:

// Get our document path.
NSArray *searchPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentPath = [searchPaths objectAtIndex:0];

// Get the full path to our file.
NSString *samplePath = [documentPath stringByAppendingPathComponent:@"recorded.wav"];
...