我發現這種創建目錄的方式,如果它不存在。但它看起來有點不可思議,我擔心1000次嘗試中有1次會出錯。如果目錄不存在,是否有更安全的方法來創建目錄?
if(![[NSFileManager defaultManager] fileExistsAtPath:bundlePath]) {
[[NSFileManager defaultManager] createDirectoryAtPath:bundlePath withIntermediateDirectories:YES attributes:nil error:NULL];
}
只有這種尷尬的方法fileExistsAtPath,它也查找文件,而不僅僅是目錄。但對我而言,危險的是:如果這種情況出現錯誤怎麼辦?我該怎麼辦?什麼是最好的做法,以確保目錄的創建,並且只有當它不存在時才創建?
我知道文件系統操作從來都不安全。設備可能會在電池開始從A到B剷起時突然鬆開電池電源。或者它可能會碰到一個壞點並掛起一秒鐘。也許在很少的情況下,即使沒有目錄,它也會返回YES。簡而言之:我不信任文件系統操作。
我該如何使這絕對安全?
太棒了!如果發生錯誤,我該怎麼辦?嘗試再試一次有意義嗎? (至少幾次...?以及如果沒有幫助,該怎麼辦?) – dontWatchMyProfile 2011-05-25 15:00:52
我不知道如果出現錯誤該怎麼辦。這取決於你想要得到多麼奇特。您可以查找特定的錯誤並以不同的方式處理它們,或嘗試創建不同的路徑。也許讓用戶選擇一個不同的? – 2011-05-25 15:17:12
您需要檢查返回值,而不是錯誤指針 – Sven 2013-02-09 08:17:09