了解IOS沙盒... NSTemporaryDirectory()

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
	@autoreleasepool {

		// 获取根目录
		// mac 用户的根目录
		// ios 根目录 /Users/用户名/Library/Developer/.....

		// 沙盒的根目录
		NSString * sandBoxPath = NSHomeDirectory();

		//获取Document目录
		// 参数1: 要查找的目录
		// 参数2: 是否是用户主目录
		// 参数3: YES/NO 是否获取全路径.
		NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

		NSString * documentPath = [paths lastObject];
		NSLog(@"%@", documentPath);

		//获取cache目录
		NSArray * paths2 = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
		NSString * cachePath = [paths2 lastObject];
		NSLog(@"%@", cachePath);

		//获取Library目录
		// for ...에서
		NSArray * paths3 = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
		NSString * libraryPath = [paths3 lastObject];
		NSLog(@"%@", libraryPath);

		//获取Preference目录
        // 注意: Preferences 只能用拼接的方式找到,NSPreferencePanesDirectory 只能找到PreferencePanes
        // PreferencePanes iphone 并没有这个目录.
        NSArray * paths4 = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
        NSString * preferencePath = [[paths4 lastObject] stringByAppendingPathComponent:@"Preferences"];
        NSLog(@"%@", preferencePath);

        // 获取tmp目录 , iphone 能获取正确的 tmp 目录, osx好像不能获取
        NSString * tmpDir = NSTemporaryDirectory();
        NSLog(@"%@",tmpDir);

	}
	return 0;
}
其中, NSDocumentDirectory 是指程序中对应的Documents路径,而NSDocumentionDirectory对应于程序中的Library/Documentation路径,这个路径是没有读写权限的,所以看不到文件生成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值