Source Checkout - ziparchive - Project Hosting on Google Code
根本的な間違いで失礼しました。
iPhoneアプリで ZIP圧縮をかけたい。探したところ
Source Checkout - ziparchive - Project Hosting on Google Code
情報など
下記のサイトが参考になった。
Compressing directory contents on the iPhone with zlib :: Post No Bills
実装など
※今回はサンプルなし
こんな感じで使う。
#import "ZipArchive.h" : - (void)someMethod { NSString* zipFile = @"/some/path/target.zip"; NSArray* fileList = [NSArray arrayWithObjects: @"/some/data/file1.csv", @"/some/data/file2.csv", nil]; // (1) 準備 ZipArchive* archiver = [[ZipArchive alloc] init]; [archiver CreateZipFile2:zipFile]; // (2) ファイル追加(圧縮) for (NSString* filePath in fileList) { [archiver addFileToZip:filePath newname:[filePath lastPathComponent]]; } [archiver CloseZipFile2]; [archiver release]; }addFileToZip:newname: の最初に引数に追加したいファイルをパス付きで指定する。2番目の引数はZIPファイル内のパス情報。例の場合、[filePath lastPathComponent] すなわちファイル名だけを渡している(file1.csv, file2.csv)。この場合、圧縮されたファイルを解凍すると次のようになる。
target.zip ↓解凍 target/ |-- file1.csv |-- file2.csvトップレベルのフォルダ名は ZIPファイルの拡張子を除いた部分が使われる。
もし2番目の引数(newname:)にパス情報のついた filePathをそのまま渡すと、ZIPファイル内にはパス階層も保存される。解凍すると次のようになる。
target.zip ↓解凍 some/ |--data/ |-- file1.csv |-- file2.csv
なお利用するにはフレームワークへ lib.1.2.3.dylib を追加しておく。
iphone開発者 says:
2010年12月17日 17:18
実際使ったライブラリは紹介されたObjective-Zipではなく、ziparchiveじゃないかなと思います。
http://code.google.com/p/ziparchive/
iphone開発者 says:
2010年12月17日 17:18
実際使ったライブラリは紹介されたObjective-Zipではなく、ziparchiveじゃないかなと思います。
http://code.google.com/p/ziparchive/
xcatsan says:
2010年12月19日 8:46
こんにちは。
指摘の通りですね。
大ボケかましてしまいました。
後ほど修正しておきます。
ありがとうございました!
xcatsan says:
2010年12月19日 8:46
こんにちは。
指摘の通りですね。
大ボケかましてしまいました。
後ほど修正しておきます。
ありがとうございました!