在iOS9+中,任何尝试读取文件的操作都是零。本例中的文件是映像文件路径。br>使用
NSData(contentsOfFile: stringpath, options: NSDataReadingOptions.DataReadingUncached)
或
NSData(contentsOfFile: stringpath)
操作:br>我已从路径中删除“file://”,它现在存在权限问题。br>
错误domain=nscocoaerrordomain code=257“无法打开文件img_0048.jpg,因为您没有查看该文件的权限。”UserInfo=nsFilePath=/var/mobile/media/dcim/100apple/img_0048.jpg,NsUnderlyingError=0x13F978F50 Error Domain=nsPosixErrordomain Code=1“不允许操作}
我已添加
我遇到此错误是因为我试图访问同一块中的多个文件。对我有效的修复方法是更改代码结构,以便在尝试获取下一个文件url之前,先获取每个文件url,然后从其中读取。
您很可能会出现此错误,因为iOS应用程序只能访问其沙箱中的文件。有关详细信息,请参阅Apple文件系统文档。
在您的应用程序中,由于使用沙箱,您没有访问文件的权限。
因此,无论您做什么,都不能用文件路径初始化文件。在我的应用程序中,我从gallery by Photos工具包中提取了数据而不是URL,并用数据初始化了
PHImageManager.default().requestImageData(
for: assetObject!, options: options,
resultHandler: {
data, _, _, _ in
if data != nil {
self.assetUrl = movieMaker.createMovieFrom(imageData: data!, duration: Int(CXPreparetValue.imageDuration))
}
})
对我有用!如果你有其他意见,请告诉我。