アプリケーションでNSLogを使用しています。そして、各文字列の煩わしい始まりを取り除きたいと思います: "2009-07-01 21:11:06.508 MyApp [1191:207]"。
そうする方法はありますか?おそらく別のロギング機能?
ありがとう。
アプリケーションでNSLogを使用しています。そして、各文字列の煩わしい始まりを取り除きたいと思います: "2009-07-01 21:11:06.508 MyApp [1191:207]"。
そうする方法はありますか?おそらく別のロギング機能?
ありがとう。
これらを読んでください:
これは、元は CocoaHeads サイトの「QuietLog」と呼ばれる Github プロジェクトで、QuietLog
あなたが説明していることを行う関数を作成する方法を説明しています。また、QuietLog を LocationLog というマクロにラップして、ログ ステートメントを取得したファイル名と行番号を出力する方法も示します。私はすべてのプロジェクトでそれを使用しており、迷子の「NSLog」ステートメントを失うことはもうありません。
NSLog
このプリプロセッサ マクロは簡単に実装でき、現在のステートメントを変更する必要はありません。
#define NSLog(FORMAT, ...) printf("%s\n", [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);
NSLog
メッセージの前に余分なものがない場合とまったく同じように機能します。
私はもともとこれを別のSOの質問で見つけましたが、今は見つけられません。
CFShow()を試しましたか?
書式文字列と引数に Objective-C オブジェクトを使用できるのが好きなので、NSLog() を書き直してユーティリティに追加しました。
+ (void)myLog:(NSString *)formatString, ...
{
va_list args;
va_start(args, formatString);
NSString* output = [[NSString alloc] initWithFormat:formatString arguments:args];
fprintf(stderr, "%s\n", [output UTF8String]);
[output release];
va_end(args);
}