afLog.cpp
上传用户:kaiguan
上传日期:2007-10-28
资源大小:1074k
文件大小:3k
源码类别:

其他游戏

开发平台:

Visual C++

  1. // afLog.cpp: implementation of the afLog class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "stdafx.h"
  5. #include "afLog.h"
  6. #include <direct.h>
  7. #include <stdarg.h>
  8. #include <stdlib.h>
  9. #include <stdio.h>
  10. #include <string.h>
  11. #include <time.h>
  12. char afLog::fileName[1024];
  13. void afLog::init(const char* nLogFileName)
  14. {
  15. _getcwd(fileName, _MAX_PATH);
  16. strcat(fileName, "\");
  17. strcat(fileName, nLogFileName);
  18. FILE* fp = fopen(fileName, "a+");
  19. if(fp==NULL)
  20. return;
  21. fprintf(fp, "nnn");
  22. fclose(fp);
  23. info("================================================================");
  24. info("");
  25. info("                           Log opened");
  26. info("");
  27. info("================================================================");
  28. info("");
  29. }
  30. void afLog::info(const char *szFormat, ...)
  31. {
  32. char buffer[512], buffer2[512];  // Large buffer
  33. // Format the input string
  34. va_list pArgs;
  35. va_start(pArgs, szFormat);
  36. vsprintf(buffer, szFormat, pArgs);
  37. va_end(pArgs);
  38.     char tmpbuf[128];
  39.     time_t ltime;
  40.     struct tm today;
  41. time(&ltime);
  42. today = *localtime(&ltime);
  43. strftime(tmpbuf, 128, "%Y-%m-%d %H:%M:%S", &today);
  44. sprintf(buffer2, "%s INFO:  %s", tmpbuf, buffer);
  45. FILE* fp = fopen(fileName, "a+");
  46. if(fp==NULL)
  47. return;
  48. fprintf(fp, buffer2);
  49. fprintf(fp, "n");
  50. fclose(fp);
  51. }
  52. void afLog::warning(const char *szFormat, ...)
  53. {
  54. char buffer[512], buffer2[512];  // Large buffer
  55. // Format the input string
  56. va_list pArgs;
  57. va_start(pArgs, szFormat);
  58. vsprintf(buffer, szFormat, pArgs);
  59. va_end(pArgs);
  60.     char tmpbuf[128];
  61.     time_t ltime;
  62.     struct tm today;
  63. time(&ltime);
  64. today = *localtime(&ltime);
  65. strftime(tmpbuf, 128, "%Y-%m-%d %H:%M:%S", &today);
  66. sprintf(buffer2, "%s WARNING:  %s", tmpbuf, buffer);
  67. FILE* fp = fopen(fileName, "a+");
  68. if(fp==NULL)
  69. return;
  70. fprintf(fp, buffer2);
  71. fprintf(fp, "n");
  72. fclose(fp);
  73. }
  74. void afLog::error(const char *szFormat, ...)
  75. {
  76. char buffer[512], buffer2[512];  // large buffers
  77. // format the input string
  78. va_list pArgs;
  79. va_start(pArgs, szFormat);
  80. vsprintf(buffer, szFormat, pArgs);
  81. va_end(pArgs);
  82.     char tmpbuf[128];
  83.     time_t ltime;
  84.     struct tm *today;
  85. time(&ltime);
  86. today = localtime(&ltime);
  87. strftime(tmpbuf, 128, "%Y-%m-%d %H:%M:%S", today);
  88. sprintf(buffer2, "%s ERROR:  %s", tmpbuf, buffer);
  89. FILE* fp = fopen(fileName, "a+");
  90. if(fp==NULL)
  91. return;
  92. fprintf(fp, buffer2);
  93. fprintf(fp, "n");
  94. fclose(fp);
  95. }
  96. void afLog::trace(const char *szFormat, ...)
  97. {
  98. szFormat;
  99. #ifdef _DEBUG
  100. char buffer[512];  // large buffer
  101. // format the input string
  102. va_list pArgs;
  103. va_start(pArgs, szFormat);
  104. vsprintf(buffer, szFormat, pArgs);
  105. va_end(pArgs);
  106. OutputDebugString(buffer);
  107. #endif //_DEBUG
  108. }