Hi, I can properly unzip a zip file launching a NSTask with /usr/bin/unzip
The task saves the unzipped file to the disk, then a I read the unzipped
file in a NSData. Well. My question is:
Can I do the same job without saving the unzipped file to the disk?

I have tried to set the standard output to a pipe - which works well with
other tasks - but here it doesn't work. The task never exits. Here's the
wrong code:

NSTask *unzip = [[[NSTask alloc] init] autorelease];
[unzip setLaunchPath:@"/usr/bin/unzip"];
[unzip setArguments:[NSArray arrayWithObjects:@"-p", zipfile,
@"filetounzip", nil]];

NSPipe *aPipe = [NSPipe pipe];
[unzip setStandardOutput:aPipe];
[unzip launch];
[unzip waitUntilExit];

if([unzip terminationStatus] == noErr){
     dictData = [NSMutableData data];
     while((dataOut = [aPipe availableData]) && [dataOut length]){
         [dictData appendData:dataOut];
     }
}


-- Leo


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to