LxFTPRequest 库和demo在Github上有。https://github.com/DeveloperLx/LxFTPRequest
参照demo上的下载文件的方法,
serverURL,这个参数,举个例子,
ftp://192.168.1.108:7795/data_disk1/A_group/test.txt/
ftp://IP:端口号路径
注意端口号跟路径之间不需要加空格,还有一点需要特别注意,这个路径是文件的路径,不需要加根目录名,否则会下载失败。
localFileURL,
file:///var/mobile/Containers/Data/Application/6DC09B47-5DDB-4EA2-AA3D-CA25FF8BD050/Documents/test.txt
file://沙盒路径/文件名.后缀
注意这个地方是需要加上文件名和文件后缀的。
还有一点,如果下载的这个文件,在本地沙盒路径,存在同名的文件,会提示下载成功,但是并没有真正的下载下来,此时的文件覆盖动作,需要自己手动去实现。
即:在下载之前,获取沙盒路径下的所有文件,判断,将要下载的这个文件,是否在沙盒中已存在同名文件,若有,删除此文件,再进行下载即可。
- (void)cheakLocalFileIsContains:(NSString *)fileName{
NSArray *paths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *documentsDirectory = [pathsobjectAtIndex:0];
NSFileManager *fileManage = [NSFileManagerdefaultManager];
NSArray *allFile = [fileManagesubpathsOfDirectoryAtPath: documentsDirectoryerror:nil];
if ([allFilecontainsObject:fileName]) {
[fileManage removeItemAtPath:[NSStringstringWithFormat:@"%@/%@",documentsDirectory,fileName]error:nil];
}
}