Fopen() C++

Olá pessoal!

Não estou entendendo porque o seguinte trecho de código não funciona:

char file[100];
sprintf(file, "%sruntime\\restart.%s.log", parameter[0], __DATE__);
pFile = fopen(file, "a");

Eu quero criar um arquivo de log por dia, para isso tentei o código acima, mas o conteúdo a ser logado tem sido acrescentado no final do mesmo arquivo. Tentei usar também “a+w” como segundo argumento da função fopen(), pois pelo que eu pesquisei o “w” criará um arquivo novo se não existir, mas não funfou :confused:

Help?

Obrigada!

O seu problema não é com fopen e sim com DATE

DATE é uma constante que contém a data de compilação do seu programa. Por exemplo, se seu programa foi compilado em 01/04/2013, o valor de DATE será sempre “Apr 1 2013”, não importando o dia em que você está rodando o seu programa.
Portanto, não pode ser usada para gerar um arquivo de log por dia.

Vlw pela dica, foi muito valiosa! Agora estou usando o _strdate() :slight_smile:

Vc conhece alguma função que pode ser usada para buscar arquivos em uma determinada pasta usando expression language?

“Expression language” = EL do JSP (JSTL)?
Você não está pensando em “regular expressions”?

Se estiver, existe um pacote de expressões regulares do Boost:
http://www.boost.org/doc/libs/1_52_0/libs/regex/doc/html/index.html

desculpe, é expressão regular rs