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
こんにちは。
指摘の通りですね。
大ボケかましてしまいました。
後ほど修正しておきます。
ありがとうございました!