iOS アプリでObjectiveZip
ライブラリ (のラッパー)を使用しています。MiniZip
私のアプリは .zip アーカイブをサーバーに送信し、そこでモデレーターによって手動で処理されます。アーカイブを作成するための私のコードは次のとおりです。
NSString * zipfile = [Result zipfilePathWithResult:self];
ZipFile * zf = [[ZipFile alloc] initWithFileName:zipfile mode:ZipFileModeCreate];
ZipWriteStream * zws = [zf writeFileInZipWithName:@"report.xml" compressionLevel:ZipCompressionLevelNone];
[zws writeData:[xml dataUsingEncoding:NSUTF8StringEncoding]];
[zws finishedWriting];
for (NSString * name in mediaFiles)
{
ZipWriteStream * zws = [zf writeFileInZipWithName:name compressionLevel:ZipCompressionLevelNone];
[zws writeData:[files objectForKey:name]];
[zws finishedWriting];
}
[zf close];
残念ながら、これらのアーカイブはデフォルトの OS X ArchiveUtility では正しく処理されません。アーカイブの実際の内容に関係なく、常にファイルを zip.cpgz に解凍します (通常は .xml ファイルといくつかの .jpg ファイルです)。
ただし、OS X および Windows 上の他のアプリケーションの一部はアーカイブを正しく開くことができるため、アーカイブが実際に壊れているわけではありません。
ObjectiveZip を ArchiveUtility で動作させる方法はありますか? または、それを実行できる.zipファイルを作成するための他のobjective-cライブラリを提案できるかもしれません。前もって感謝します!