iphone - 从 NSURL 获取 NSString

标签 iphone objective-c

我尝试使用以下方法从 NSURL 获取 NSString:

NSString *tmp2 = [item.path absoluteString];

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

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

我得到:

file://localhost/var/mobile/Applications/A30FD2E4-A273-4522-AFD5-A981EFD3C2AA/Documents/***%20***%20-%20***%20***.***

知道为什么吗?

最佳答案

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

但是,查看文档您也可以使用 path , relativePathrelativeString以其他格式获取 url 的字符串表示形式(符合或不符合 RFC 1808 的绝对路径或相对路径(现在已过时 percent encoding )。

关于iphone - 从 NSURL 获取 NSString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8730107/

相关文章:

iphone - 如何使用 iPhone 的单元测试框架测试 NSAssert 命中案例

ios - 在 ScrollView 中按下时居中元素

iphone - 有没有一种简单的方法来观察 UITableView 中的可见单元格?

ios - 从 Objective-C 初始化 Swift Storyboard

ios - 从数组中获取字典值

iphone - 如何关联 View Controller 和xib文件

ios - Xcode:如何访问使用 Storyboard 呈现的 View Controller 的实例?

ios - 从 UIAlertView 中的 UITextField 获取文本以设置标签的文本

objective-c - 如何从 apns 获取设备 token 到设备?

objective-c - 在路径上找到一个点