2011-05-31 75 views
4

我的OSX Cocoa應用程序使用SQLite來管理數據。初始化時,我需要指定數據庫文件的存儲位置。OSX:在哪裏存儲應用程序的SQLite文件?

處理這個問題的標準方法是什麼?

需要運行該數據庫文件(應用程序會在不存在的情況下創建該文件),並且數據應永久保存,即使在可能的情況下進行了軟件更新。

我應該在哪裏存放它?應用文件夾?支持文件?

感謝

+0

也請參閱搜索應用程序支持:Mac App Store的 - 無法保存文件(http://stackoverflow.com/q/6053551/557219) – 2011-05-31 23:26:01

回答

9

約定是將其存儲在應用程序支持文件夾中。即~/Library/Application Support/*YourAppName*/database.db

你可以找到你與

NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES); 
+0

手動輸入應用程序名稱還是動態獲取它? – 2011-06-01 13:39:38

+0

你可以使用'NSString * appName = [[NSBundle mainBundle] objectForInfoDictionaryKey:@「CFBundleName」];'' – gcamp 2011-06-01 15:13:35

2

在你的應用程序的應用程序支持文件夾。

看看核心數據項目設置 - 它顯示了這通常由其他應用程序完成。或者將Core Data用於您自己的應用程序而不是SQLite文件。

1

聽起來像它應該在應用程序支持文件夾中。

相關問題