0

そのアプリのログファイルを維持する必要があるアプリケーションがあります。NSLog を使用してログを記録しています。しかし、これはシステム ログにも書き込まれます。

アプローチ :

NSString *appending_filename=[log_dir_path stringByAppendingString:@"/MyApp.log"];

const char *log_p = [appending_filename cStringUsingEncoding:NSUTF8StringEncoding];

newStderr= freopen(log_p, "a", stderr);

NSLog(@" This should only goes to MyApp.log");
4

3 に答える 3

0

1日さまざまなことを試した後でも、これに対する解決策は得られませんでした。そのため、ユーザー定義関数自体を進めます。

于 2012-12-19T11:47:10.230 に答える
0

NSLog は常にシステム ログに記録します。ドキュメントを参照してください。

あなたが望むことを行うことができる他のログライブラリについては、この投稿を見てください:

DEBUG と異なるログレベルでのみ有効化を処理する、人気のあるオープンソースの NSLog 代替品はありますか?

于 2012-12-18T10:16:35.930 に答える
0

で検索し、Google で同じことを行いますSOQuietlogプログラムにコピーQuietlog()し、必要に応じて変更してから、

#define NSLog() Quietlog()

あなたのプログラムで。したがって、出力を必要なものにリダイレクト (およびフォーマット) できます。

于 2012-12-18T15:20:24.650 に答える