标题:日志处理文件名问题坐等高手!!!
取消只看楼主
doing8
Rank: 1
等 级:新手上路
帖 子:20
专家分:3
注 册:2012-6-15
结帖率:50%
已结贴  问题点数:10 回复次数:3 
日志处理文件名问题坐等高手!!!
void rizhichuli(char str[20],char str1[50])
{
    FILE *pf;
    char tmpbuf[9],tmpbuf1[9];
    _strdate( tmpbuf );  //取当天日期
    pf=fopen("D:/trans/Log_Data/_strdate().Log","a");
    fprintf(pf,"%-20s",str);
    fprintf(pf,"%-20s",str1);
    fprintf(pf,"%-20s","已完成");
    fprintf(pf,"%10s",tmpbuf);
    _strtime( tmpbuf1 );
    fprintf(pf,"%15s\n",tmpbuf1);
    //_strdate( tmpbuf );
}

我想让建立的文件名为 当天的日期
例如今天文件名就是 12/07/08
pf=fopen("D:/trans/Log_Data/_strdate().Log","a");
这个因该怎么改
搜索更多相关主题的帖子: void 
2012-07-08 14:21
doing8
Rank: 1
等 级:新手上路
帖 子:20
专家分:3
注 册:2012-6-15
得分:0 
我想要实现的是 今天是 7月8号  处理过的 东西都存在此日志里面
然后到了 明天 再处理 他就自动重新建立一个 7月9号的处理日志

2012-07-08 16:34
doing8
Rank: 1
等 级:新手上路
帖 子:20
专家分:3
注 册:2012-6-15
得分:0 
   以下是引用TonyDeng在2012-7-9 20:06:35的发言:

      既然不答话,继续坐等吧。  


    昨天晚上就没关注了 不好意思 今天想起来了 就是拼字符串

    建议很到位 已经实现了 用strcat连接 整个文件名字符 就搞定了。。。

    版主的提醒的“ / ”“ \ ” 让我避免了一个蛋疼的 错误;
                                                                                                                                                                                                                                                                                                                                                                                                                    
2012-07-09 21:02
doing8
Rank: 1
等 级:新手上路
帖 子:20
专家分:3
注 册:2012-6-15
得分:0 
实现的代码

因为选择了  _strdate( tmpbuf ); 函数 注定 蛋疼


void rizhichuli(char str[20],char str1[10])
{
    FILE *pf;
    char tmpbuf[9],tmpbuf1[9],tok[3][10],ct[9];
    char s[80]="D:/trans/Log_Data/";
    char s1[20]=".Log";
    char seps[]="/";
    char *token;
    int i=0;
    _strdate( tmpbuf );
    strcpy(ct,tmpbuf);
    _strtime( tmpbuf1 );

    token=strtok(tmpbuf,seps);

    while(token!=NULL)
    {
        strcpy(tok[i++],token);
        token=strtok(NULL,seps);
    }

    strcat(s,"20");
    strcat(s,tok[2]);
    strcat(s,tok[0]);
    strcat(s,tok[1]);
    strcat(s,s1);
    pf=fopen(s,"a");
    fprintf(pf,"%-20s",str);
    fprintf(pf,"%-10s",str1);
    fprintf(pf,"%-10s","已完成");
    fprintf(pf,"%-10s",ct);
    fprintf(pf,"%-10s\n",tmpbuf1);
    fclose(pf);

    //strtok
}
2012-07-09 21:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-372981-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.078306 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved