这真的取决于你。但是有很多东西只使用 URL。
您可以轻松地从 NSURL 转到路径。但往另一个方向发展需要一些规范化。
例如,使用带有方案的路径会给你一个不正确的 URL。
NSString *pathString = @"file://localhost/etc..../Document.txt";
NSURL *fileURL = [NSURL fileURLWithPath:pathString];// This will not work.
但是,如果初始化正确,您可以期望来自 URL 的路径是正确的路径。
NSURL *fileURL = [NSURL URLWithString:pathString];
NSURL *sanePath = fileURL.path;
因此,您可以通过 3 个步骤获得正确的网址
NSURL *fileURL = [NSURL URLWithString:pathString];
NSURL *sanePath = fileURL.path;
// You can at this point use the Path and expect it will be correct.
fileURL = [NSURL fileURLWithPath:sanePath];
// You can at this point use fileURL and know it will be a correct fileURL with file://.
或者,您可以检查该方案以查看它是否正确。但这是我在使用 AVAsset 时遇到的一个问题,因为它不会单独从路径加载 NSURL。它必须是一个文件URL
祝你好运。:)