在目标c中将多个文件复制到剪贴板

时间:2013-11-10 15:47:24

标签: objective-c

我正在尝试将多个文件复制到剪贴板,我不确定我缺少什么。我写这个小程序只是为了测试把一个文件放在剪贴板上,但是在它运行之后,剪贴板上什么都没有。我看不出我错过了什么。这是我正在运行的代码:

NSPasteboard *pasteboard = [NSPasteboard generalPasteboard];

NSInteger changeCount = [pasteboard clearContents];

NSMutableArray *filesToCopy;

NSString* pathToFile = @"/Users/user/Downloads/file1.jpg";
NSURL* fileURL = [[NSURL alloc] initFileURLWithPath:pathToFile];

[filesToCopy addObject:fileURL];

BOOL OK = [pasteboard writeObjects:filesToCopy];

2 个答案:

答案 0 :(得分:1)

在线上放置一个断点:

[filesToCopy addObject:fileURL];

到达时,检查所涉及的变量,看问题?

为了说服自己,你是正确的跨过声明,然后再次检查变量。

HTH

答案 1 :(得分:1)

实际上,我现在觉得很傻。问题是数组从未实际初始化。我很惊讶没有抛出异常因为addObject是在一个nil对象上完成的。这条线

    NSMutableArray *filesToCopy;

应该是

NSMutableArray *filesToCopy = [[NSMutableArray alloc] init];