2012-03-02 24 views
1

私は文書が、私は文書があることを知っている文書が存在するかどうかを確認しますか?

NSString *DocumentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 
    NSString *theFile = [[DocumentPath stringByAppendingPathComponent:FileName] retain]; 
    NSLog(@"File : %@",theFile); 
    NSLog(@"FileName : %@", FileName); 
    BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:theFile]; 
    NSLog(@"FileExists : %@", fileExists); 

を実行して、存在するかどうかを確認しようとしていますが、私は見つけるために、これを実行すると、そのが削除されて言うならば、何かが、その後、他の何かをしています。しかし、私がNSLogとして取得するのは

FileExists : (null) 

私はいくつかのチュートリアルを見てきましたが、これは正しいと言います。私は何かが欠けている?

+0

ファイルが存在することをどのように確認しましたか? 'theFile'に基づいてターミナルで開くことができますか? – zaph

+0

はい。しかし、それはそれを見ることができないようです。 – Popeye

+1

すべてを再検討する必要があります。あなたのコードは良いです(最後のNSLog()のBOOLの%@を除いて、変数 "FileName"の命名規則は小文字で始まり、不要な保持で始まります、本当にARCの使用を検討してください)。私たちはあなたのファイルとディレクトリ構造を見ることができませんので、私たちはそれを助けることはできませんが、それはおそらく単一の問題です。 NSFileManagerは機能します。問題はあなたのコードにあります。あなたが行ったいくつかの仮定は間違っています。 – zaph

答えて

1

私のためにこのコード作品。保存ファイルResources->file.txt

NSString *myFilePath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/file.txt"]; 
NSLog(@"FileExist %d",[[NSFileManager defaultManager] fileExistsAtPath:myFilePath]); 
1

代わりにあなたのの使用この行を:

NSLog(@"FileExists : %d", fileExists); 

% @書式指定子は、オブジェクトのみに使用され、指定されたオブジェクトの説明メソッド呼び出しの結果でプリント

+0

私はこれを試してみましたが、実際に違いはありません。nullの代わりに0が表示されます。 – Popeye

+1

ゼロは存在しないことを意味します。文書がそこにあることをどうやって知っていますか?パスを確認します。 –

関連する問題