Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode Mac OS:在哪里保存带有文件url书签的NSData对象?_Xcode_Macos_Save_Nsdata - Fatal编程技术网

Xcode Mac OS:在哪里保存带有文件url书签的NSData对象?

Xcode Mac OS:在哪里保存带有文件url书签的NSData对象?,xcode,macos,save,nsdata,Xcode,Macos,Save,Nsdata,我是Mac OS开发新手,所以我有一个简单的问题。我有一个文件夹的NSURL对象,我想保留此URL,并使其成为应用程序退出/重新启动/文件夹重命名的防弹工具。因此,我制作了一个NSData书签。我现在有点困惑,我必须在哪里保存这个NSData对象以备将来使用 最好将对象保存到NSUserDefaults 或者我必须在我的包中创建一个文件并将这个对象存储在其中,如果是的话,那个文件的扩展名必须是什么,它是否“安全” 或者我必须将该文件保存在应用程序支持目录中 在我写了这个问题之后,我发现了另一个问

我是Mac OS开发新手,所以我有一个简单的问题。我有一个文件夹的
NSURL
对象,我想保留此URL,并使其成为应用程序退出/重新启动/文件夹重命名的防弹工具。因此,我制作了一个
NSData
书签。我现在有点困惑,我必须在哪里保存这个
NSData
对象以备将来使用

最好将对象保存到
NSUserDefaults

或者我必须在我的包中创建一个文件并将这个对象存储在其中,如果是的话,那个文件的扩展名必须是什么,它是否“安全”

或者我必须将该文件保存在应用程序支持目录中


在我写了这个问题之后,我发现了另一个问题,如果我有更多的数据要保存,比如
NSString
对象或
NSNumber
或者,我必须用信息创建另一个文件,或者可以创建一个包含所有必要信息的文件?

NSUserDefaults
用于存储用户首选项和应用程序将在下次运行时使用的其他数据。对于你的例子,你可以使用它

应用程序包通常不用于写入数据。具体来说,用户可能是标准用户,在这种情况下,他/她将对应用程序包只有读取、执行权限,并且尝试在包内写入将失败

应用程序支持目录用于保存下一次运行中应用程序所需的文件和其他大数据。如果数据大小小于,则首选将其存储在
NSUserDefaults


您可以定义自己的键,将其他
NSString
NSNumber
等对象保存到
nsserdefaults
。相同的键用于读取
nsserdefaults

,因此,从您的回答中,我理解,我可以并且这将是好的,将
NSURL
nsuserdata
书签对象存储到
nsserdefaults
,对吗?这是正确的,用户偏好,用户设置,应用程序状态通常存储在
NSUserDefaults
中。