通过网络复制文件夹
问题描述:
我正在编写一个应用程序,通过网络将文件和文件夹复制到客户端计算机上。其他一切只是桃色。这是我不知道如何去复制文件 - 我看着NSFileManager,但似乎这需要安装网络驱动器。我的目标是非常透明地模拟远程桌面的“复制文件”对话框。任何想法/帮助?通过网络复制文件夹
编辑:看起来像一个SCP包装,或与NSTask的SCP命令可以帮助我。但仍然想知道如何:[
答
这是有点不清楚,如果你想知道如何使用NSTask,或使用它的SCP。
但这里有一个简单的使用NSTask的例子。 该命令的每个参数必须放入数组中。 所以例如用于
/bin中/ CP命令-R /Users/userName/Desktop/fooFolder/fooFile.foo /用户/ suerName /桌面/ fooCopyToFolder
会是这样完成的。
NSPipe *output;
NSTask *task;
task = [[NSTask alloc] init];
NSString* cpPath = @"/bin/cp";
NSString* sourcePath [email protected]"/Users/userName/Desktop/fooFolder/fooFile.foo";
NSString* finalPath = @"/Users/suerName/Desktop/fooCopyToFolder";
[task setLaunchPath:cpPath];
[task setArguments:[NSArray arrayWithObjects:@"-R",sourcePath ,finalPath, nil]];
output = [[NSPipe alloc] init];
[task setStandardOutput:output];
[task setStandardInput:[NSPipe pipe]];
[task launch];
[task waitUntilExit];
int status = [task terminationStatus];
if (status == 0) {
NSLog(@"task succeeded. %i",status);
} else {
NSLog(@"task failed.%i",status);
;
}
我明白如何使用NSTask来复制本地文件,但我想知道如何使用SCP通过本地网络复制文件。任何骰子? – 2012-01-07 22:49:05
@ Galaxas0:除了使用'scp'而不是'cp'的路径,并且根据需要更改参数外,其他技术都是相同的。 – 2012-01-08 02:50:02
那么,这将让我通过网络复制文件?我承认是的,由于一些非常明显的原因,但NSTask无法验证身份,那么我如何验证文件传输? – 2012-01-08 03:03:00