以下是我正在尝试实现的快速流程:用户选择现有的摄像机滚动图像或视频。应用程序将选定的映像ftps到远程ftp服务器。很直接,或者看起来是这样!到目前为止,我可以让uiimagepickercontroller允许用户从相机卷中选择一个图像,并可以使用以下命令获取图像的一个子卷:NSURL *assetURL = [info objectForKey:UIImagePickerControllerReferenceURL];这将返回如下内容:assets-library://asset/asset.JPG?id=ACE09510-60D8-41EF-BC26-0A0A4D57B21C&ext=JPG现在,跳到第2部分,我可以使用cfnetwork框架成功地将文件ftp到远程服务器。此处缺少的链接似乎正在将资产库格式的nsurl(*assetur)转换为nsfilemanager使用的标准文件格式url。如果我使用一个硬编码的文件url,指向我的应用程序包中已经存在的.jpg,我可以成功地将其ftp出来。但是,如果使用资产库格式的url,则另一端的字节数为零。我的问题是如何将资产库url转换为常规文件url?我已经看到了如何将相机滚动图像复制到我的文档目录的示例。然后我想我可以用那个文件url来发送图像。但是,如果我打算发送视频,将一个大文件复制到documents目录只是为了将其ftp输出是不明智的。我确实意识到ftp不是首选的协议,它是由漏洞造成的。不过,这是一个现有的ftp服务器,我被告知“应该使用它”的权力,支付给我。很明显,我在如何实现这一点上缺少一两个概念。提前感谢所有能指引我正确方向的人。 最佳答案 不幸的是,您无法在ios中获得对assets目录的文件级访问权限(这解释了为什么不能引用照片文件本身),但是您应该仍然能够使用alassetlibrary根据存储在url中的数据创建图像。检查 >的答案,它演示如何使用。使用这种技术,您应该能够获得发送到ftp服务器所需的图像数据。