我有一个网址(不是路径或字符串):file:///private/var/mobile/Containers/Data/Application/50558DAA-7082-4BB0-AB0C-F7BA0DC483E5/tmp/yFFaofWcIWln-SCVideo-Merged.mp4
当我使用NSData(contentsOfUrl: url)
时,我会nil
。
我尝试使用库URL中的资源使用相同的代码,没有任何问题。
这两个网址有区别吗? 有谁知道如何从上面的URL中提取NSData?
提前致谢
编辑:似乎实际文件存在问题,由于某种原因它只包含音频而没有视频。需要进一步调查。 谢谢你的贡献。答案 0 :(得分:0)
你如何获得网址?
有很多方法可以创建URL。在使用文件路径创建NSURL时,应使用init(fileURLWithPath path: String)
。
答案 1 :(得分:0)
您可能想要检查网址中的路径是否正确,这可能是contentsOfUrl
返回nil
的原因。
然而,您正在尝试的内容可以很容易地实现:
let filePath = "file:///private/var/mobile/Containers/Data/Application/50558DAA-7082-4BB0-AB0C-F7BA0DC483E5/tmp/yFFaofWcIWln-SCVideo-Merged.mp4"
let data = NSData.dataWithContentsOfMappedFile(filePath)
答案 2 :(得分:0)
在我的具体情况下,URL中的实际数据丢失了......所以这就是为什么它返回nil。
感谢各位帮忙:)