不使用 iPhone 中的 CFURLDestroyResource 方法从 ftp 删除文件

Posted

技术标签:

【中文标题】不使用 iPhone 中的 CFURLDestroyResource 方法从 ftp 删除文件【英文标题】:Not deleting file from ftp using CFURLDestroyResource method in iphone 【发布时间】:2014-03-21 09:21:48 【问题描述】:

我已经使用 FTPHelper 类从 ftp 上传、下载文件。它工作得很好。删除操作中产生的问题。当我从 ftp 服务器中删除文件时,什么也没有发生!我不知道我哪里错了。我已参考*** link 解决从 ftp 删除文件但无法做到的问题。以下是我从 ftp 删除文件的代码。

pragma mark ***** 从 FTP 删除文件

+(void)deleteFileFromFTPforItem:(NSString *) anItem

    [sharedInstance deleteFileFromFTPforItem:anItem];
 

-(void)deleteFileFromFTPforItem:(NSString *) anItem

    if (!self.uname || !self.pword) COMPLAIN_AND_BAIL(@"Please set user name and password first");
    if (!self.urlString) COMPLAIN_AND_BAIL(@"Please set URL string first");
    
    NSString *baseDeleteURL =  [NSString stringWithFormat:@"%@/",self.urlString];
    
    NSString *deleteFilePath = [baseDeleteURL stringByAppendingString:anItem];
    
    CFURLRef deleteURL = (CFURLRef)[[NSURL alloc] initWithString:deleteFilePath];
    
    //SInt32 *errorCode = NULL;
    
    //CFURLDestroyResource(deleteURL, errorCode);
    DeleteFile(deleteURL);
    
    CFRelease(deleteURL);
    


static Boolean DeleteFile(CFURLRef urlToDelete)

    Boolean success = true;
    CFURLRef deleteURL = urlToDelete;
    SInt32 *errorCode = NULL;
    success = CFURLDestroyResource(deleteURL, errorCode);
    return success;

请给我一个正确的解决方案,我哪里出错了。我浏览了很多东西,但无法获得从 ftp 删除文件的正确方法。我已推荐 link 向/从 ftp 上传和下载文件。您的帮助将是可观的。在高级感谢

【问题讨论】:

【参考方案1】:

长话短说,NSURL 和 CFURL 中的 FTP 支持应该被视为仅下载。我认为它从来没有完全工作过,而且 ftp 已被彻底弃用,除了匿名下载之外的任何目的,所以它不太可能被修复。

您可以使用其他 FTP 访问框架,如本问题所述:

CFURLDestroyResource is now deprecated in ios7. Anyone know what to use instead?

但实际上,您可能应该问自己,与(例如)WebDAV 相比,使用 FTP 是否真的是做任何您想做的事情的正确方法。

【讨论】:

以上是关于不使用 iPhone 中的 CFURLDestroyResource 方法从 ftp 删除文件的主要内容,如果未能解决你的问题,请参考以下文章

不使用 iPhone 中的 CFURLDestroyResource 方法从 ftp 删除文件

字体在 Safari 中的 iPhone 上不显示

iPhone中的简单php帖子不起作用

如何在不使用 Xcode、iPhone 中的谷歌地图的情况下从地址获取纬度和经度

iphone中的应用程序堆大小是多少?

iPhone中的UIAccelerometer