URLWithString删除部分NSString路径

时间:2015-02-17 21:31:17

标签: objective-c nsurl

我在使用CHCSVParser解析csv文件时遇到问题。我的csv文件不“满足流”我认为问题是该文件的URL是坏的。我得到这样的网址:

NSString *path = [[NSBundle mainBundle] pathForResource:@"file" ofType:@"csv"]];
NSURL *url = [NSURL URLWithString:path];

当我记录path时,我收到了这个字符串:

/Users/wilhelmmichaelsen/Library/Developer/CoreSimulator/Devices/11F0BE77-9179-4A7B-B03E-1143957A8D02/data/Containers/Bundle/Application/7FE0AD10-DE7A-4C6D-9EED-4A95F9C197AE/Climate.app/file.csv

当我记录url时,我收到了这个字符串:

/Users/wilhelmmichaelsen/Library/Developer/CoreSimulator/Devices/11F0BE77-9179-4A7B-B03E-1143957A8D02/data/Containers/Bu ... le.csv

似乎缩短了路径字符串(...)。这有点奇怪,我该如何解决?

2 个答案:

答案 0 :(得分:0)

您应该使用fileURLWithPath从路径创建网址。

答案 1 :(得分:0)

您已使用URLWithString方法,此方法希望URLString仅包含正确格式化的网址中允许的字符。所有其他字符必须正确转义百分比。任何百分比转义字符都使用UTF-8编码进行解释。

要为文件系统路径创建NSURL个对象,请改用fileURLWithPath:isDirectory:

Here is the referece of the Apple Developers Library Documentation for NSURL Class