1

私はiPhoneの読み取り/書き込みでたくさん読んでいて、持っているものはすべて正しいと思いますが、何らかの理由で正常に機能していません。

コードは次のとおりです

NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [docsDirectory stringByAppendingFormat:@"filename.rtf"];
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath:filePath])

作成しているアプリのiphoneシミュレータードキュメントフォルダーに移動し、安全対策としてそのファイルを追加しましたが、まだifステートメントがトリガーされていません。だから、どういうわけかそれは私の書き込みと読み取りのすべてを不可能にしているそれを見つけていません。FileManagerのcreateFile関数を使用してみましたが、結果が得られませんでした。何かのコードをさらに投稿する必要がある場合はお知らせください。ただし、上記のすべてが正しい場合は、ファイルが正しく検出されているはずです。前もって感謝します。

更新:修正されました。陽気に単純な間違い。みんな、ありがとう。

4

2 に答える 2

3

によって返されるNSStringにはNSSearchPathForDirectoriesInDomainsスラッシュが付いていないため、作成しているパスが正しくありません。stringByAppendingPathComponentパスセパレーターを正しく処理する用途にファイル名を追加します。

filePathを作成するには、次のことを試してください。

NSString *filePath =[docsDirector stringByAppendingPathComponent:@"filename.rtf"];
于 2010-04-27T21:37:04.380 に答える
0

stringByAppendingPathComponent:の代わりに使用してみましたかstringByAppendingFormat:。docsDirectoryに末尾のスラッシュが含まれていない場合、実際には/PATH/TO/Documentsfilename.rtfではなくという名前のファイルが作成されます/PATH/TO/Documents/filename.rtf

于 2010-04-27T21:35:35.130 に答える