`URLByAppendingPathComponent`不接受参数

sin*_*inθ 0 cocoa-touch ios

我的程序中有以下内容:

return [directory URLByAppendingPathComponent:fileName];
Run Code Online (Sandbox Code Playgroud)

与调试器检查,fileName__NSCFString * @"OA1aK7ikkYq5cK5"(所以它包含@"OA1aK7ikkYq5cK5")

directory 是使用以下方法检索的URL:

[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
Run Code Online (Sandbox Code Playgroud)

为什么这会抛出这个:

*由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [NSPathStore2 URLByAppendingPathComponent:]:无法识别的选择器发送到实例0x10fa01de0

Guy*_*gus 7

NSSearchPathForDirectoriesInDomains返回字符串数组,而不是URL.你应该打电话

NSURL *directory = [NSURL fileURLWithPath:[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]];
Run Code Online (Sandbox Code Playgroud)

编辑

只是想澄清它是一个NSPathStore2对象数组,它是一个子类NSString.