iphone 開発にZipを使用する方法
iphone 開発にZipを使用する方法
iphone内のデータを外部へ転送したい場合に、
Zip化した方が効率的が良いので、その方法を調査してみました。
iosの開発では、SSZipArchive を使用することにより、簡単にZipを使用することができます。
SSZipArchive の使用方法です。
1.SSZipArchive をダウンロード
https://github.com/soffes/ssziparchive
2.導入方法
- ソースコード内のSSZipArchiveディレクトリをそのままプロジェクトへインポートしましょう。
- libz.dylib(フレームワーク)を追加する。
3.SSZipArchive の使い方
// Zipを解凍
NSString *zipPath = @"解凍するZipのファイルパス";
NSString *destinationPath = @"解凍するファイルパス";
[SSZipArchive unzipFileAtPath:zipPath toDestination:destinationPath];
// Zip化
NSString *zippedPath = @"圧縮した後のファイルパス";
NSArray *inputPaths = [NSArray arrayWithObjects:
[[NSBundle mainBundle] pathForResource:@"photo1" ofType:@"jpg"],
[[NSBundle mainBundle] pathForResource:@"photo2" ofType:@"jpg"]
nil];
[SSZipArchive createZipFileAtPath:zippedPath withFilesAtPaths:inputPaths];
// Zipping directory
[SSZipArchive createZipFileAtPath:zippedPath withContentsOfDirectory:inputPath];
iphoneにてファイル圧縮を行う上で必要である処理のサンプル
-
iOSにて、ドキュメントのファイルパスを取得する方法
/**
* ドキュメントのファイルパスを取得
*
* @return ドキュメントのファイルパス
*/
-(NSString *)getDocumentPath{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
return [paths objectAtIndex:0];
}
-
iOSにて、文字列からNSDataを作成する方法
/**
* 文字列からNSDataを作成
*
* @param str 変換する文字列
* @return 変換したNSData
*
*/
-(NSData *)createNSDataAtNSString:(NSString *)str{
return [NSData dataWithBytes:str.UTF8String
length:str.length];
}
-
iOSにて、ファイルを作成する方法
/**
* ファイルの作成
*
* @param filePath ファイル作成するパス
* @param dataString ファイルに書き込むNSData
* @return 作成結果(TRUE:作成成功,FALSE:作成失敗)
*/
-(BOOL)createFile:(NSString *)filePath
fileData:(NSData *)fileData{
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL result = [fileManager createFileAtPath:filePath
contents:[NSData data] attributes:nil];
if (!result) {
NSLog(@"ファイルの作成に失敗");
}
return result;
}
- iOSにて、ファイルを削除する方法
/**
* ファイルの削除
*
* @param filePath ファイルパス
* @return 処理結果(TRUE:削除成功,FALSE:削除失敗)
*/
- (BOOL)deleteFile:(NSString *)filePath{
NSError *error;
// ファイルを削除
BOOL result = [[NSFileManager defaultManager] removeItemAtPath:filePath
error:&error];
if (result) {
NSLog(@"ファイルを削除に成功:%@", filePath);
} else {
NSLog(@"ファイルの削除に失敗:%@", error.description);
}
return result;
}
-
iOSにて、ファイルの存在確認する方法
/**
* ファイルの存在確認
*
* @param : filePath 存在確認したいファイルパス
* @return : 処理結果 (TRUE:存在あり,FALSE:存在なし)
*
*/
-(BOOL)checkExsitFile:(NSString *)filePath{
NSFileManager *fileManager = [NSFileManager defaultManager];
return [fileManager fileExistsAtPath:filePath];
}
管理者オススメのアプリ
簡単に日々のスケジュールを管理できる無料のphoneアプリです。
スケジュール、シフト管理、TODO,お小遣い管理、メモなどいろいろ使用できるアプリ。
メニューの並び替えも自由!
スケジュール、シフト管理、TODO,お小遣い管理、メモなどいろいろ使用できるアプリ。
メニューの並び替えも自由!
すごい手帳を使ってみる
アクセス数:
トラックバック(0)
トラックバックURL: http://smartwolf.sakura.ne.jp/Blog/mt-tb.cgi/171
コメントする