Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 像在zip中一样将文件夹和文件组合在一起_Xcode_Macos_Cocoa_Attributes_Zip - Fatal编程技术网

Xcode 像在zip中一样将文件夹和文件组合在一起

Xcode 像在zip中一样将文件夹和文件组合在一起,xcode,macos,cocoa,attributes,zip,Xcode,Macos,Cocoa,Attributes,Zip,如何像zip文件那样将文件夹和文件合并到一个对象中 假设您想创建一个与任何压缩工具功能相同的应用程序。选择一个文件夹,它将其中的所有文件及其子文件夹合并到一个对象中 您必须将文件夹结构和每个文件信息保存到某个值中。但是你会在哪里做呢。在“完成对象”属性中 在这方面的一些起点将是伟大的,非常感谢 非常感谢 由于tar命令行工具可以实现您想要的功能,并且您可以使用NSTask类运行任何命令行工具,因此我将向您指出这一方向 下面也是实现相同功能的方法:- NSTask *task; task =

如何像zip文件那样将文件夹和文件合并到一个对象中

假设您想创建一个与任何压缩工具功能相同的应用程序。选择一个文件夹,它将其中的所有文件及其子文件夹合并到一个对象中

您必须将文件夹结构和每个文件信息保存到某个值中。但是你会在哪里做呢。在“完成对象”属性中

在这方面的一些起点将是伟大的,非常感谢


非常感谢

由于
tar
命令行工具可以实现您想要的功能,并且您可以使用
NSTask
类运行任何命令行工具,因此我将向您指出这一方向


下面也是实现相同功能的方法:-

NSTask *task;
task = [[NSTask alloc] init];
[task setLaunchPath: @"/bin/bash"];
[task setArguments:[NSArray arrayWithObjects: @"-c", @"tar -xzf yourFile",nil]];
NSPipe *pipe;
pipe = [NSPipe pipe];
[task setStandardOutput: pipe];

NSFileHandle *file;
file = [pipe fileHandleForReading];

[task launch];

NSData *data;
data = [file readDataToEndOfFile];
NSString *response = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
NSLog(@"%@",response);

看起来很棒。非常感谢你!