Ios NSString中的NSUrl返回null

Ios NSString中的NSUrl返回null,ios,objective-c,parsing,nsstring,nsurl,Ios,Objective C,Parsing,Nsstring,Nsurl,我想将我的文档目录的位置从NSString解析为NSUrl 当我的控制台NSLog(stringURL)时 但当我这么做的时候 NSURL* url = [NSURL URLWithString:stringUrl]; 我得到的NSLog(url)(null)作为输出 我在这里做错了什么?改用fileURLWithPath(因为您正在传递文件路径): 改用fileURLWithPath(因为您正在传递文件路径): 那么: NSURL* url = [NSURL fileURLWithStrin

我想将我的文档目录的位置从
NSString
解析为
NSUrl

当我的控制台NSLog(stringURL)时

但当我这么做的时候

NSURL* url = [NSURL URLWithString:stringUrl];
我得到的NSLog(url)(null)作为输出


我在这里做错了什么?

改用fileURLWithPath(因为您正在传递文件路径):


改用fileURLWithPath(因为您正在传递文件路径):

那么:

NSURL* url = [NSURL fileURLWithString:stringUrl];
//                  ^^^^
那么:

NSURL* url = [NSURL fileURLWithString:stringUrl];
//                  ^^^^

苹果文档中的“一个NSURL对象用URLString初始化。如果URL字符串格式不正确或为零,则返回零。”您的stringURL不是正确格式的URL。供参考::

您实际想要使用的是:
fileURLWithPath:isDirectory:

NSURL *url = [NSURL fileURLWithString:[stringURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] isDirectory:YES];
NSLog(@"%@", url);

苹果文档中的“一个NSURL对象用URLString初始化。如果URL字符串格式不正确或为零,则返回零。”您的stringURL不是正确格式的URL。供参考::

您实际想要使用的是:
fileURLWithPath:isDirectory:

NSURL *url = [NSURL fileURLWithString:[stringURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] isDirectory:YES];
NSLog(@"%@", url);

只有一件事,当我再次登录URL和字符串时,我得到了以下信息:NSString URL:/var/mobile/Applications/5667FADC-F848-40CF-A309-7BFE598AE6AB/Library/Application Support/MyAppDirectory。NSUrl URL:file:///var/mobile/Applications/5667FADC-F848-40CF-A309-7BFE598AE6AB/Library/Application㤈㤋ތȀ乽啓汲唠䱒›楦敬⼺⼯慶⽲潭楢敬䄯灰楬慣楴湯⽳㘵㜶䅆䍄䘭㐸ⴸ〴䙃䄭〳ⴹ䈷䕆㤵䄸㙅䉁䰯扩慲祲䄯灰楬慣楴湯㈥匰灵潰瑲䴯䅹灰楄敲瑣牯⽹upport/MyAppDirectory/1st是字符串,第二个是中文字母,当我登录url时。那是怎么发生的我认为这是因为应用程序和支持之间存在空白,请参阅我编辑的答案您(无效)建议使用
stringByAddingPercentEscapesUsingEncoding
导致OP出现“汉字”问题。除非在HTTP请求中使用该方法,否则不需要使用该方法。看他的下一个问题:事实上,我是在op遇到汉字问题后提出这个建议的。这是试图解决这个问题,而不是我最初的建议。只有一件事,当我再次登录时,URL和字符串,我得到了:NSString URL:/var/mobile/Applications/5667FADC-F848-40CF-A309-7BFE598AE6AB/Library/Application Support/MyAppDirectory。NSUrl URL:file:///var/mobile/Applications/5667FADC-F848-40CF-A309-7BFE598AE6AB/Library/Application㤈㤋ތȀ乽啓汲唠䱒›楦敬⼺⼯慶⽲潭楢敬䄯灰楬慣楴湯⽳㘵㜶䅆䍄䘭㐸ⴸ〴䙃䄭〳ⴹ䈷䕆㤵䄸㙅䉁䰯扩慲祲䄯灰楬慣楴湯㈥匰灵潰瑲䴯䅹灰楄敲瑣牯⽹upport/MyAppDirectory/1st是字符串,第二个是中文字母,当我登录url时。那是怎么发生的我认为这是因为应用程序和支持之间存在空白,请参阅我编辑的答案您(无效)建议使用
stringByAddingPercentEscapesUsingEncoding
导致OP出现“汉字”问题。除非在HTTP请求中使用该方法,否则不需要使用该方法。看他的下一个问题:事实上,我是在op遇到汉字问题后提出这个建议的。这是试图解决这个问题,而不是我最初的建议。