微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – NSURL isFileURL总是返回NO

有人可以向我解释为什么以下代码
Nsstring* filePathString = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)[0];

NSLog(@"%i",[[NSURL URLWithString:filePathString] isFileURL]);
NSLog(@"%@",filePathString);

输出

0

“在/ var /移动/应用/ 28ADFC19-874C-4304-94B5-F6441CAE9FAD /文档”

这意味着此网址不是文件URL.显然是这样的.

背景:

我试图使用一个AVCaptureMovieFileOutput写一个电影录音到一个文件,但是我证明的文件url给出了错误

*由于未知的异常’NSinvalidargumentexception’终止应用程序,原因:’* – [AVCaptureMovieFileOutput startRecordingToOutputFileURL:recordingDelegate:] – 无法记录到URL / var / mobile / Applications / 28ADFC19-874C-4304-94B5-F6441CAE9FAD / Documents / media / CrKNjNhe9so2LRnD9iHK .mov因为它不是一个文件URL.“

这看起来像一个文件URL给我,就像原始的例子.是什么赋予了?

解决方法

如果要从文件路径创建NSURL,则必须使用NSURL fileURLWithPath:.使用URLWithString假定该字符串是非文件URL.

NSURL只有当文件以file://开始时才是文件URL.

原文地址:https://www.jb51.cc/iOS/329903.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐