jjzjj

ios - NSURL :initWithString fails for string obtained from NSSearchPathForDirectoriesInDomains

coder 2024-01-11 原文

有人能告诉我为什么这段代码会失败吗?调用 initWithString 后 url 为 nil。正在成功填充变量 documentsDirectory。

NSArray   *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString  *documentsDirectory = [paths lastObject];  
NSURL* url =   [[NSURL alloc]initWithString:documentsDirectory];  

谢谢

最佳答案

来自 the documentation :

Parameters
URLString
The string with which to initialize the NSURL object. This string must conform to URL format as described in RFC 2396. This method parses URLString according to RFCs 1738 and 1808.

这意味着必须正确转义特殊字符(空格变为 %20 等);

简单地做:

NSURL *url = [[NSURL alloc] initFileURLWithPath:documentsDirectory];

关于ios - NSURL :initWithString fails for string obtained from NSSearchPathForDirectoriesInDomains,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8650763/

有关ios - NSURL :initWithString fails for string obtained from NSSearchPathForDirectoriesInDomains的更多相关文章

随机推荐