从NSURL获取NSString

MTA*_*MTA 10 iphone objective-c

我试图让NSStringNSURL用这种方法:

NSString *tmp2 = [item.path absoluteString];
Run Code Online (Sandbox Code Playgroud)

不幸的是,我得到的不是NSURL:

<CFURL 0x173c50 [0x3f1359f8]>{type = 0, string = /var/mobile/Applications/A30FD2E4-A273-4522-AFD5-A981EFD3C2AA/Documents/*** *** - *** ***.***, encoding = 134217984, base = (null)} 
Run Code Online (Sandbox Code Playgroud)

我明白了:

file://localhost/var/mobile/Applications/A30FD2E4-A273-4522-AFD5-A981EFD3C2AA/Documents/***%20***%20-%20***%20***.***
Run Code Online (Sandbox Code Playgroud)

任何想法为什么?

Dav*_*ist 20

NSURL文件明确指出,absoluteString返回一个NSString,就像上面的代码.这是绝对路径的字符串表示,所以你得到的就是你应该得到的.

但是,查看您也可以使用的文档path,relativePathrelativeString获取其他格式的URL的字符串表示形式(绝对路径或相对路径,这些路径是否符合RFC 1808(现在已过时的百分比编码).