我正在学习 iPhone 上的核心音频。我一直在使用更高级别的 api,所以很多与核心音频相关的东西对我来说都是新的。为了获得对文件的引用,我通常使用 [[NSBundle mainBunle]pathForResource:];然后从重新调整的字符串创建一个 NSURL。
但是对于核心音频,我需要使用-
CFURLRef CFURLCreateFromFileSystemRepresentation (
CFAllocatorRef allocator,
const UInt8 *buffer,
CFIndex bufLen,
Boolean isDirectory
);
参数
分配器
用于为新 CFURL 对象分配内存的分配器。传递 NULL 或 kCFAllocatorDefault 以使用当前的默认分配器。
缓冲区
要转换为 CFURL 对象的字符字节。这应该是您在 POSIX 函数调用中使用的路径。
bufLen
缓冲区中的字节数。
是目录
一个 bool 值,指定在解析相对路径组件时是否将字符串视为目录路径 - 如果路径名指示目录,则为 true,否则为 false。
我将传递什么作为该函数的第二个参数。
提前致谢。
Best Answer-推荐答案 strong>
NSURL 与 CFURLRef 是免费桥接的。这意味着您可以将 NSURL 转换为 CFURLRef,如下所示:
CFURLRef url = (CFURLRef)[[NSBundle mainBunle] URLForResource:...];
如果你真的想使用 CFURLCreateFromFileSystemRepresentation,第二个参数是一个字符数组,很像 C 风格的“char *”字符串。
关于iphone - 如何使用 CFURLCreateFromFileSystemRepresentation,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/5167373/
|