私のコードfileExistsAtPath:のポイントで、私が確認したファイルに対してNOを返します。私はこれで私の頭を傷つけてきたし、なぜこのコードは、このディレクトリに絶対に存在するが、とにかく作成されていないように変更されていない理由を把握することはできません。fileExistsAtPath:存在するファイルに対してNOを返します。
NSError* err = nil;
NSURL *dir = [[NSFileManager defaultManager] URLForDirectory:NSApplicationSupportDirectory
inDomain:NSUserDomainMask
appropriateForURL:nil
create: YES
error:&err];
BOOL exists = [[NSFileManager defaultManager] fileExistsAtPath:[dir absoluteString]];
このコードを実行すると、アプリケーションディレクトリフォルダーが存在し、errは0ですが、まだ存在しません。
これはどのようにすることができますか?
TIA
URLForDirectory場合にもチェックしていない...方法をnilを返します。 – bneely
さらに、作成アクションが同期または非同期であるかどうかはドキュメントに示されていませんが、fileExistsAtPath:callの前に数秒の遅れをとって試してみて、結果が変わるかどうか確認してください。 – bneely
私が言及したように、Errはゼロです。また、ディレクトリのパスにdirが正しく設定されています(コンソールまたはNSLogでその内容が正しく設定されている場合)。このコードを呼び出す前に、ディレクトリはすでに存在しています。私がアプリケーションを2回実行すると、まだ存在するBOOLは0に設定されています。 – Gruntcakes