実際に NSKeyedArchiver archiveRootObject を呼び出し、ファイル属性を NSFileProtectionComplete または NSFileProtectionCompleteUnlessOpen に設定してデータ保護 API を操作することは可能ですか?
質問する
2370 次
1 に答える
6
最初に、オブジェクトを特定の場所、この場合はdocFile(これはdocumentsディレクトリに設定されます)に書き込もうとします。次に、ファイル属性をdocFileに適用します。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex: 0];
NSString* docFile = [docDir stringByAppendingPathComponent: @"Somefile.plist"];
NSError* error;
if([NSKeyedArchiver archiveRootObject:tempData toFile:docFile]) {
NSDictionary *fileAttributes = [NSDictionary
dictionaryWithObject:NSFileProtectionComplete
forKey:NSFileProtectionKey];
if([[NSFileManager defaultManager] setAttributes:fileAttributes
ofItemAtPath:docFile error: &error]) {
NSLog(@"Success");
}
else {
NSLog@(%@", error);
}
}
于 2012-11-20T18:27:12.450 に答える