NSHomeDirectory - [NSBundle mainbundle]

时间:2014-01-22 18:38:30

标签: ios objective-c

nshomedirectory和[nsbundle mainbundle]之间的区别是什么

如何将文件从我的mac复制到nshomedirectory / documents文件?

我需要为商店.sqlite文件选择哪一个?

我何时需要为某些事情选择[nsbundle mainbundle]?

我发现这个网站http://www.ios-developer.net/iphone-ipad-programmer/development/file-saving-and-loading/where-to-store-files,但它并没有告诉我差异。

1 个答案:

答案 0 :(得分:0)


[NSBundle mainBundle];

取自苹果网站;

通常,主bundle对应于应用程序文件包或应用程序包装器:带有应用程序名称并以“.app”扩展名标记的目录。

[[NSBundle mainBundle] resourcePath];

此方法返回现代应用程序和框架包的适当路径。此方法可能不会返回非标准包格式或某些较旧的包格式的路径。

NSHomeDirectory();

这将输出用户主目录,例如/ Users / someuser /

在iOS中,主目录是应用程序的沙箱目录。在OS X中,它是应用程序的沙箱目录或当前用户的主目录(如果应用程序不在沙箱中)


回答你的问题:
NSBundle mainbundle是指文件系统中* .app文件的位置,其中NSHomeDirectory指向用户主目录,与应用程序的位置无关。

我还添加了[[NSBundle mainBundle] resourcePath];选项,因为这可能是你要找的。

了解更多信息,请访问apple dev网站上的NSBundle, NSBundle Class reference

对不起,我无法帮助你的其他查询,我没有使用sqlite的经验。