2016-11-08 41 views
1

我正在開發一個應用程序,我需要在macOs緩存文件夾中存儲一些文件。由於每個用戶的路徑都發生變化,我無法確定它。對於爲例我的是:在mac os上使用cocoa獲取私有/ var/folders緩存文件夾路徑

/var/folders/_9/q7r9pg8s31g5m96jf7q3h3j80000gn/C/ 

我知道的方法,如

NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSAllDomainsMask, YES); 

但它只是給我:

「/用戶/我/庫/緩存」 - 「/Library/Caches「 - 」/ System/Library/Caches「

這不是我需要的。我正在尋找相當於NSTemporaryDirectory()的緩存文件夾。

我發現得到它是使用終端輸入getconf DARWIN_USER_CACHE_DIR的唯一途徑...

回答

0

你必須添加目錄,這樣的擴展緩存文件夾:

NSString *path = nil; 
NSArray *paths = NSSearchPathForDirectoriesInDomains(
NSCachesDirectory, NSUserDomainMask, YES); 
if ([paths count]) 
{ 
    NSString *bundleName = 
    [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleIdentifier"]; 
    path = [[paths objectAtIndex:0] stringByAppendingPathComponent:bundleName]; 
} 

基礎的在https://www.cocoawithlove.com/2009/07/temporary-files-and-folders-in-cocoa.html