在目标c中创建文件时出现未知错误

Dan*_*iel 2 macos cocoa objective-c

我正在创建一个需要使用另一个文件的内容创建文件的mac应用程序,我按如下方式创建它:

NSString *p = @"/AfilethatEXISTS.plist";
NSString *user1 = @"~/Library/MyApp/myFile";
    NSString *pT1 = [user1 stringByExpandingTildeInPath];
    [[NSFileManager alloc] createFileAtPath:[NSURL URLWithString:pT1] contents:[NSData dataWithContentsOfFile:p] attributes:nil];
Run Code Online (Sandbox Code Playgroud)

但是没有返回错误,它没有创建文件?

bbu*_*bum 6

这段代码有几个问题,但没有足够的上下文告诉你出了什么问题.

首先,永远不应该有/直接存在文件.该目录应该是神圣不可侵犯的,如果没有管理员权限,许多用户将无法写入该目录.

其次,应该通过NSString和NSURL上的路径操作API来管理路径.

接下来,pT1它实际上不是一个URL,URLWithString:可能会返回nil.请fileURLWithPath:改用.

最后,在该代码中没有任何错误检查,因此,没有办法告诉您如何发现没有错误.你检查了什么?