複数のドキュメントを含むzip
ファイルを作成したい場合、ドキュメントは私のドキュメントディレクトリから取得されます。iOSのzipファイルに複数のドキュメントを追加するには?
BOOL isDir=NO;
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSArray *subpaths;
for(int i=0; i<[arrdocument count]; i++)
{
NSString *toCompress = [arrdocument objectAtIndex:i];
NSString *pathToCompress = [documentsDirectory stringByAppendingPathComponent:toCompress];
NSFileManager *fileManager = [NSFileManager defaultManager];
if ([fileManager fileExistsAtPath:pathToCompress isDirectory:&isDir] && isDir){
subpaths = [fileManager subpathsAtPath:pathToCompress];
} else if ([fileManager fileExistsAtPath:pathToCompress]) {
subpaths = [NSArray arrayWithObject:pathToCompress];
}
NSString *zipFilePath = [documentsDirectory stringByAppendingPathComponent:@"myZipFileName2.zip"];
ZipArchive *za = [[ZipArchive alloc] init];
[za CreateZipFile2:zipFilePath];
if (isDir) {
for(NSString *path in subpaths){
NSString *fullPath = [pathToCompress stringByAppendingPathComponent:path];
if([fileManager fileExistsAtPath:fullPath isDirectory:&isDir] && !isDir){
[za addFileToZip:fullPath newname:path];
}
}
} else {
[za addFileToZip:pathToCompress newname:toCompress];
}
}
しかし、私はzip
ファイルを見るときには、zipファイル内の1つの文書のみを示して?
をところで、あなたがして終了したとき、あなたはまたCloseZipFile2を呼び出す必要がありますファイル。あなたの場合は、ループの最後の前に、ファイルを追加した後にそれを行う必要があります。 –
sir ZipArchiveに追加するオプションはありません。 –
私は "arrdocument"、私はzipファイルに追加したいファイルの配列を持っています。 には、別の方法があるかどうかが示唆されています。 –