2011-10-25 54 views
0

私のアプリで起こるアクションでtxtログファイルを作ろうとしています。私は、アプリケーションがサーバーに接続しているときにテキストを保存して、新しい情報を表示したいと思っています。ファイルにデータを書き込む

よくファイルに書き込むにはどうすればよいですか?私はwriteToFileメソッドを使ってみました:しかし、fileExistsAtPath:がNOを返すので動作しません。

私のコードは次のとおりです。

NSString *file_path = @"mylog.txt"; 
NSString *log = @"Hello World!!\n"; 
[log writeToFile:file_path atomically:YES encoding:NSUnicodeStringEncoding error:nil]; 

ありがとう!

PS:ああ、オーガナイザーでiPhoneを差し込んだままで読むことはできますか?

答えて

1

)あなただけ(のNSLogを使用することができますが、ドキュメント

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *file_Path = [documentsDirectory stringByAppendingPathComponent:@"log.txt"];  
[log writeToFile:file_path atomically:YES encoding:NSUnicodeStringEncoding error:nil]; 

を格納するため< APP_HOME>/Documentsフォルダを使用する必要があります。しかし、通常、アプリを実行しながら物事を見ると、ダンプしたい場合は、 それを出力コンソールで

+(NSString*)createPath:(NSString*)fileName{ 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSString *localizedPath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@",fileName]]; 

    //NSLog(@"%@",localizedPath); 
    return localizedPath; 
} 

それはあなたのファイルのパスを返します。

+0

私はNSLogを使用していますが、私のアプリではない多くの行があります。さらに、私はホール・デーの間に私のアプリで何が起こったのか見たいと思っています。私はラップトップを持ち歩くことができず、5分ごとに見ています。あなたのコードを試してみるつもりです、ありがとう。 – Ibai

+0

オッコイゴツチ、それは今働いている!情報を書き換える代わりにテキストを追加する機会はありますか?ありがとう! – Ibai

+1

NSStringのwriteToFileは追加できません。 fileHandleForUpdatingAtPath:で作成されたNSFileHandleを使用して、writeData:を使用して連続的にデータを書き込むことができます。また、使いやすいサードパーティのiOSロギングユーティリティもいくつかあります。 – EricS

1

は、私が書いたこの方法を試してみてください。あなたはそれに名前を付ける必要があります。

関連する問題