【发布时间】:2012-09-25 21:08:13
【问题描述】:
我正在使用这种方法
-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
当我在我的应用程序中打开一个文件时,它会给出一个特定的文件 url。该网址看起来像
file://localhost/Users/User/Library/Application%20Support/iPhone%20Simulator/6.0/Applications/229C1D14-28D4-4B82-8CBB-8B9BC472E7A3/Documents/Inbox/Trinity_2016-4.pdf
我正在尝试将其从文件 url 转换为路径,以便我可以将它与开源库 SCRFTPRequest 一起使用。
问题是当我尝试指向一个文件时遇到可可错误 260,我只是想确保我设置正确。
NSFileReadNoSuchFileError = 260, // Read error (no such file)
这是示例代码
SCRFTPRequest *ftpRequest = [[SCRFTPRequest alloc] initWithURL:[NSURL URLWithString:@"ftp://192.168.1.101/"]
toUploadFile:[[NSBundle mainBundle] pathForResource:@"Info" ofType:@"plist"]];
这就是我改变它的方式
NSString *fileurl = @"file://Users/User....pdf";
NSString *path = [fileurl substringFromIndex:16];
SCRFTPRequest *ftpRequest = [[SCRFTPRequest alloc] initWithURL:[NSURL URLWithString:@"ftp://192.168.1.101/"]
toUploadFile:path];
此代码的格式是否正确?正如所写,它使用 substringFromIndex 将文件 url 从 file://localhost/Users/User... 更改为 /Users/User...
【问题讨论】:
-
我不知道 SCRFTPRequest 是做什么的,但如果它需要一个 NSString,它可能需要一个路径,而不是文件 url。
-
SCRFTPRequest 那么对于路径,我是否只需删除'file://'?
-
我猜它需要一个路径,因为示例代码有效地传递了一个路径。你甚至尝试过吗?如果它是一个开源库,你为什么要问呢?去看看代码对那个参数做了什么。如果您不理解代码中的某些内容,因为它以特定方式执行某些操作,请提出与理解该特定内容相关的问题。
-
所以,我尝试使用 stringFromIndex 使字符串看起来像 /Users/User...file.pdf ,但我仍然收到错误 260。我只是在询问如何格式化路径。 NSBundle 示例在路径周围有箭头,例如 /User...file.pdf>。我也试过了,但没有运气。
-
我不确定你在说什么。
stringFromIndex是什么? “路径周围的箭头”示例在哪里?您实际使用的是什么路径?正常写入的路径/Users/User...file.pdf与OsX机器上的真实文件不对应,所以错误是正确的,因为文件不存在。您要上传的文件的实际路径是什么?
标签: iphone xcode cocoa file ftp