2010年6月27日日曜日

is deprecated 対応

"is deprecated" を放置しておくとAppleからスピンオフされてしまう。
今回は NSFileManager 関係で2件対応


directoryContentsAtPath is deprecated

NSArray *array = [[NSFileManager defaultManager] directoryContentsAtPath:path];

for (NSString *fname in array) { }

⇒ enumeratorAtPath

NSDirectoryEnumerator *dirEnum = [[NSFileManager defaultManager] enumeratorAtPath:path];

NSString *fname;

while (fname = [dirEnum nextObject]) { }


fileAttributesAtPath is deprecated

NSDictionary *fileDict = [[NSFileManager defaultManager] fileAttributesAtPath:[path stringByAppendingPathComponent:fname] traverseLink:NO];

attributesOfItemAtPath

NSError *error = nil;

NSDictionary *fileDict = [[NSFileManager defaultManager] attributesOfItemAtPath:[path stringByAppendingPathComponent:fname] error:&error];

以上

0 件のコメント:

コメントを投稿