下面给出的是我用快速编写的函数,该代码在10.0版本的iPhone中可以正常工作,但在9.0 中给出错误,说
CFURLCopyResourcePropertyForKey失败,因为它被传递了URL
没有方案无法加载:文件
无法打开“Recording2017-03-06_11.08.53000.mp3”。
partFileURL将具有
/ private / var / mobile /容器/数据/应用程序/B8F9055D-D816-4E27-BA2A-B13F0EE97709/tmp/Recording2017-03-06_11.08.53000.mp3
这是我的以下功能-:
//function
func putPartUplaod(partFileURL:URL , partFileNumber:Int)
{
var partfileData:Data?
var md5hash:Any?
var sha256hash:Any?
// var error: NSError?
let uri:URL = NSURL(fileURLWithPath: partFileURL.absoluteString) as URL
//Get MD5 Digest
do{
print(partFileURL)
partfileData = try NSData(contentsOf: uri, options: NSData.ReadingOptions.dataReadingMapped) as Data
print("hello" , partfileData);
md5hash = partfileData?.md5().base64EncodedString()
}catch let error as NSError {
print("Failed to load: \(error.localizedDescription)")
}
}
最佳答案
您可以使用NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];
之类的内容。您传入的字符串不是有效的URL,它只是一个文件路径。为了使其成为URL,您需要添加方案file://
。