Você está aqui: C++ ::: Dicas & Truques ::: Arquivos e Diretórios |
Usando a função tmpfile() para criar arquivos temporários em C++Quantidade de visualizações: 7142 vezes |
Em algumas situações precisamos criar arquivos temporários em C++, ou seja, criar arquivos durante a execução do programa e excluí-los automaticamente quando o programa for fechado. Para isso podemos usar a função tmpfile(), presente no header <cstdio>. Veja sua assinatura: FILE *tmpfile(void); Esta função não recebe nenhum parâmetro e retorna um ponteiro para um fluxo de arquivo do tipo FILE. O arquivo temporário é do tipo binário e aberto para update (modo wb+). A implementação C/C++ nos garante que o nome do arquivo temporário será diferente de todos os arquivos já existentes no sistema. Além disso, o arquivo temporário criado é automaticamente excluído quando o fluxo de arquivo é fechado (geralmente usando fclose()) ou quando o programa é fechado de forma normal. Veja um trecho de código no qual usamos a função tmpfile() para criar um arquivo temporário, escrever no mesmo e obter o conteúdo de volta: #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { FILE* arquivo = NULL; char buffer[256]; // vamos criar o arquivo temporário e abrí-lo arquivo = tmpfile(); // o arquivo foi criado e aberto com sucesso? if(arquivo){ // vamos escrever no arquivo fputs("Este é um arquivo temporário", arquivo); // agora vamos ler o conteúdo de volta fseek(arquivo, 0, SEEK_SET); fgets(buffer, 255, arquivo); // vamos fechar o fluxo....o arquivo será automaticamente excluído fclose(arquivo); cout << "O conteúdo do arquivo é: " << buffer << "\n\n"; } else{ cout << "Erro: " << strerror(errno) << "\n\n"; } system("PAUSE"); return EXIT_SUCCESS; } |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
VB.NET - Como retornar o tamanho de uma string em VB.NET usando a propriedade Length da classe String |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |