这是我在
Swift游乐场中运行的代码:
import Foundation import AudioToolBox var audioURL:NSURL = NSURL.fileURLWithPath("/path") var audioFile:UnsafePointer<AudioFileID> var audioCfUrl:CFURL = audioURL as CFURL AudioFileOpenURL(audioCfUrl!,Int8(kAudioFileReadPermission),&audioFile)
在最后一行我收到错误:
'NSURL' is not a subtype of CFURL
解决方法
错误消息可能会产生误导.
> audioCfUrl!是错误的,因为audioCfUrl不是可选的.
>最后一个参数应该是AudioFileID变量的地址.
正如在(现已删除的)答案中已经说过的那样,您不必强制转换NSURL
到CFURL:
let audioURL = NSURL.fileURLWithPath("/path") var audioFile : AudioFileID = nil let status = AudioFileOpenURL(audioURL,&audioFile)