常用的日志信息的宏
来源:互联网 发布:暴风tv电视怎么样知乎 编辑:程序博客网 时间:2024/06/07 05:47
#if defined (DRM_LOG_MSG_S)#define _D_LOG_DIR"./LOG"#define PLAY_MSG_LOG(X){\if(NULL != (X)) {\char tempbuf[30];struct tm ti;\FILE *file =NULL;__time64_t long_time;\_mkdir(_D_LOG_DIR);_time64( &long_time ); \ _localtime64_s(&ti, &long_time );\sprintf_s(tempbuf,sizeof(tempbuf),"%s/%d-%d-%d.LOG",_D_LOG_DIR,ti.tm_year+1900,ti.tm_mon+1,ti.tm_mday);\fopen_s(&file,tempbuf,"a+b");\_strtime_s(tempbuf,sizeof(tempbuf));\sprintf_s(tempbuf,sizeof(tempbuf),"%s: ",tempbuf);\fwrite(tempbuf,sizeof(char),strlen(tempbuf),file);\fwrite((X),sizeof(char),strlen(X),file);\fwrite("\r\n",sizeof(char),strlen("\r\n"),file);\fclose(file);\}\}#else#define PLAY_MSG_LOG(X)#endif
#if defined (DRM_DEB_MSG_S)#define PRIN_MSG(X)fprintf(stdout,"MSG:%s--end",(X))#else#define PRIN_MSG(X)#endif
class CDebugLog{private:FILE * file;enum { LOGPATHLEN = 50 };char pathDir[LOGPATHLEN] ;char logNam[LOGPATHLEN/2];__time64_t openTime;public:CDebugLog(const char* pathDir="./LOG"):file(0),openTime(0){memset(this->pathDir,0,sizeof(this->pathDir));memset(this->logNam,0,sizeof(this->logNam));strcpy_s(this->pathDir,sizeof(this->pathDir),pathDir);}bool OpenLog(){struct tm ti;__time64_t long_time;_mkdir(pathDir);_time64( &long_time ); _localtime64_s(&ti, &long_time );sprintf_s(pathDir,sizeof(pathDir),"%s/%d-%d-%d.LOG",pathDir,ti.tm_year+1900,ti.tm_mon+1,ti.tm_mday);if(fopen_s(&file,pathDir,"a+b"))return false;return true ;}bool WriteLog(char * msgLog, size_t logLen){if(!file)return false;_strtime_s(pathDir); //此时pathDir做为保存时间,如:14:37:49sprintf_s(pathDir,sizeof(pathDir),"%s: ",pathDir);fwrite(pathDir,sizeof(char),strlen(pathDir),file);fwrite(msgLog,sizeof(char),logLen,file);fwrite("\r\n",sizeof(char),strlen("\r\n"),file);return true ;}~CDebugLog(){fclose(file);}};
输出:
文件名:2012-8-28.LOG
内容格式:
20:46:40: hello
20:46:40: hello
- 常用的日志信息的宏
- 日志常用的宏
- postgresql的日志信息
- 异常的日志信息
- Android的日志信息介绍
- 日志信息滥用的思考
- oracle&mysql的日志信息
- solrj正确的日志信息
- 平时常用的信息
- 常用的PHP配置信息
- Android常用控件的信息!
- 常用的开发交流信息
- linux cpu的常用信息
- 一些常用的java信息
- 常用编辑器的备份文件信息
- 获取应用的常用信息
- Android 常用控件的信息
- 常用的信息加密技术
- 通用权限管理设计 之 数据权限
- 创建联动的 DropdownList in ASP.net MVC 3 and jQuery (2)
- Tomcat全攻略
- Git_Clone a remote git repository and cd into it
- 使用strace命令查看php进程信息
- 常用的日志信息的宏
- nginx+tomcat+jdk
- 在jsp里选择下拉列表的值后,刷新页面默认显示选择后的值
- in_addr
- c++编写银行管理系统
- 28个Unix/Linux的命令行神器
- Android消息通知(notification)和PendingIntent传值
- java访问XML文件
- Linux用户管理笔记---------鸟哥的私房菜