📄 utility.c
字号:
#include <stdarg.h>#include <stdio.h>#include <stdlib.h>#include <time.h>#include "utility.h"void WriteLog( char *fmt,... ){ FILE *fp; time_t tval; struct tm *now; va_list args; char szLog[1024]; char szDateTime[25]; if ( ( fp =fopen( "/var/log/nas.log", "a" ) ) !=NULL ) { tval = time( NULL ); now = localtime( &tval ); fprintf( fp,"[%d/%02d/%02d %d:%02d:%02d]", now->tm_mon+1, now->tm_mday, now->tm_year+1900,now->tm_hour, now->tm_min, now->tm_sec ); va_start( args,fmt ); vsprintf(szLog,fmt,args); vfprintf( fp, fmt, args ); fprintf( fp, "\n" ); printf("%s\n",szLog); fclose( fp ); va_end( args ); } }int gettoken(char* string,int pos,char* delimit,char* value){ char strTmp[256],strData[256]; char* pstrTmp,*pstrData; int i; if (strlen(string)==0) { return 0; } pstrTmp = strTmp; pstrData = strData; strcpy(strTmp,string);#ifdef _DEBUG printf("String=%s,pos=%d,delimit=%s\n",strTmp,pos,delimit);#endif pstrData = strtok(strTmp,delimit); if (pos==1) { if (pstrData==NULL) { return 0; } strcpy(value,pstrData); return 1; } i = 1; while (pstrData=strtok(NULL,delimit)) { i++; if (i==pos) { strcpy(value,pstrData); return i; } } return 0;}void truncateCRLF(char* string){ int i; if (strlen(string)==0) return; for (i=0;i<=strlen(string)-1;i++) { if ( (*(string+i) == 0x0d) || (*(string+i) == 0x0a) ) { *(string+i) = 0; break; } }}void trimR_space(char* string){ int counter; for (counter=strlen(string)-1; string[counter] == ' '; counter--); string[counter+1] = (char) NULL;}void trimL_space(char* string){ int counter; for (counter=0; string[counter] == ' '; counter++); strcpy(string,&string[counter]);}void trim_space(char* string){ trimR_space(string); trimL_space(string);}void get_param_value(FILE* f,char* param,char* value,char* delim){ char strTmp[256],strParam[128],strValue[128]; char *param_n, *data; param_n = strParam; data = strValue; fseek(f,0,SEEK_SET); while (fgets(strTmp,256,f)!=NULL) { truncateCRLF(strTmp); gettoken(strTmp,1,delim,param_n); trim_space(strParam); if (strcmp(strParam,param)==0) { gettoken(strTmp,2,delim,data); strcpy(value,strValue); } #ifdef _DEBUG printf("Read data from file : %s,%s\n",strTmp,strParam); #endif }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -