使用fileURLWithPath时,NSString会添加额外的字符

时间:2013-11-22 05:53:41

标签: objective-c nsurl

当我直接输入这样的行时:

NSURL *fileURL = [NSURL fileURLWithPath:@"/Users/Brandon/Desktop/challenge.txt"];

当我使用NSLog显示对象中的内容时,我得到了这个输出:

  

fileURL:file://localhost/Users/Brandon/Desktop/challenge.txt

一切都很好。

但我想传递一个变量,以便用户可以输入自己的字符串。当我这样做时,就像这样:

NSString *strURL = @"/Users/Brandon/Desktop/challenge.txt";
NSURL *fileURL = [NSURL fileURLWithPath:strURL];

我得到了这个,程序崩溃了:

  

fileURL:file://localhost/Users/Brandon/Desktop/challenge.txt%0A

为什么?

1 个答案:

答案 0 :(得分:1)

%0A是一个URL encoded换行符,可能是由用户输入中的换行符派生的。

解决方案是清理输入,但除非您发布用于从用户检索字符串的代码,否则我不能更具体。