1

我正在尝试使用NSStreams. 我不能使用NSFileManager copyItemAtPath,因为我必须使用流复制文件。

数据通过网络传输,流由 Python 脚本读取,该脚本将数据写入文件。这在 Mac OSX 上运行良好,但是当我在 iOS 中尝试时,文件没有以正确的格式保存。

我可以复制所有文件,但是复制的文件中缺少一些元数据,例如尺寸(用于图像和媒体文件)和持续时间(用于媒体文件),并且类型始终为Document。其他元数据很好。

当我尝试使用NSFileManager读取文件属性时

[[NSFileManager defaultManager] attributesOfItemAtPath:@"filePath" error:&error];

它在控制台中显示错误:

操作无法完成。没有相应的文件和目录

我还观察到,所有复制的文件,无论文件扩展名(.png、.jpeg、.mov、.zip)如何,都有一种Document

如何将源图像元数据复制到复制的文件中?

我需要关闭任何 Xcode 优化吗?

  • 操作系统:Mac OSX 10.8.4、iOS 6

  • Xcode:4.6.3

4

2 回答 2

1

这适用于任何类型的文件:

if (![NSFileManager.defaultManager copyItemAtPath: sourceFileName toPath: targetFileName error: &error]) {
    NSAlert *alert = [NSAlert alertWithError: error];
    [alert runModal];
    return;
}
于 2013-08-23T07:58:32.520 回答
0

我发现这是文件扩展名的问题。在文件扩展名之后附加了一些垃圾字符(类似于 1.png\\\)

于 2013-10-08T13:57:16.453 回答