Jac*_*ins 5 compression iphone objective-c ios automatic-ref-counting
我有一个使用ARC开发的iPhone应用程序.我有一个文件夹,其中包含我需要压缩和发送电子邮件的文档目录中的一堆图像.我的项目使用ARC.
有没有人有任何示例代码/链接到一个对我有帮助的资源?
我一直在网上闲逛,我能找到的东西与ARC不兼容 - 即使它声称是.
通过此链接http://code.google.com/p/objective-zip/downloads/list(Object-zip)下载并拖动Objective-Zip,MiniZip和ZLib拖入您的项目.导入文件:ZipFile.h,ZipException.h,FileInZipInfo.h,ZipWriteStream.h,ZipReadStream.h,zlib.h
使用此代码.请看下面:
NSString *stringPath1 = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]];
NSString *FileName=[stringPath1 stringByAppendingPathComponent:@"Your file name"];
NSString *stringPath=[stringPath1 stringByAppendingPathComponent:[@"Your file name" stringByAppendingFormat:@".zip"]];
NSArray *files = [[NSFileManager defaultManager]contentsOfDirectoryAtPath:FileName error:&error];
ZipFile *zipFile = [[ZipFile alloc]initWithFileName:stringPath mode:ZipFileModeCreate];
for(int i = 0;i<files.count;i++){
id myArrayElement = [files objectAtIndex:i];
NSLog(@"add %@", myArrayElement);
NSString *path = [FileName stringByAppendingPathComponent:myArrayElement];
NSDictionary *attributes = [[NSFileManager defaultManager]attributesOfItemAtPath:path error:&error];
NSDate *Date = [attributes objectForKey:NSFileCreationDate];
ZipWriteStream *streem = [zipFile writeFileInZipWithName:myArrayElement fileDate:Date compressionLevel:ZipCompressionLevelBest];
NSData *data = [NSData dataWithContentsOfFile:path];
[streem writeData:data];
[streem finishedWriting];
}
[zipFile close];
Run Code Online (Sandbox Code Playgroud)