iOS NSlog去掉時間戳及其他輸出樣式

1.一般項目中我的NSLog會在Prefix.pch文件添加如下代碼,已保證在非調試狀態下NSLog不工作

#ifdef DEBUG

#define NSLog(...) NSLog(__VA_ARGS__)

#else

#define NSLog(...)

#endif

2.在項目中如果沒做任何處理的話會輸出如下信息,前面有一個時間戳

2014-11-0708:25:40.885zcsy[673:8937]cell的高度258.684998

我們修改下宏如下:

#ifdef DEBUG

#define NSLog(FORMAT, ...) fprintf(stderr,"%s\n",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

#else

#define NSLog(...)

#endif

經過上面的修改我們可以輸出 純凈的內容如下:

cell的高度258.684998

我們可以用更好的版本我推薦用這個打印我們的日志:

#ifdef DEBUG

#define NSLog(FORMAT, ...) fprintf(stderr,"%s:%d\t%s\n",[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

#else

#define NSLog(...)

#endif

這樣我們的輸出就是這樣:

Objective-C

它會輸出文件名,和打印的具體行號

DealItemCell.m:307cell的高度258.684998

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容