Armazenar em Arquivo

1. Armazenar em Arquivo

vinicius gujanski
viniciusgujanski

(usa Kurumin)

Enviado em 11/07/2008 - 08:03h

Oi pessoal sou novo na linguagem C, gostaria de saber se alguém pode me explicar como faço para armazenar o conteúdo de uma variável em arquivo TXT ( to precisando construir um programa de cadastro)ou me mandar um link onde eu consiga isso.
Muito obrigado!!!!!!!!!!!!!!!!!!!!!



  


2. Manipulando Arquivos Externos

Renan Peliçari Rodrigues
renanpelicari

(usa Outra)

Enviado em 11/07/2008 - 08:55h

Bom, aqui está um exemplo de manipulação de arquivos externos em C. Não compilei, mas a idéia é essa.
Boa Sorte.

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

#define MAX_SIZE 100
#define NUM_MAX_LINHAS 100

#define OK 0
#define I_ERR 1
#define O_ERR 2

typedef char palavra[MAX_SIZE];
typedef palavra lista_textos[NUM_MAX_LINHAS];

// rotina que le o arquivo dados.txt
// retorna se deu erro ou se foi ok
// parm textos volta linha a linha do arquivo
// parm size volta numero de linhas
int le_in( lista_textos textos, int * size )
{
FILE *texto; //o file é uma variável para um arquivo externo (no caso o txt)
int retorno, contador_in;
palavra word;


texto = fopen("dados.txt", "rt"); //fopen abre o arquivo e o rt(read text) lê o arquivo
if ( texto == NULL) //se o texto estiver em branco, da erro na abertura
{
fprintf(stderr, "Deu erro na abertura da entrada\n");
retorno = I_ERR;
}
else
{

for ( contador_in = 0; !feof(texto); contador_in++ )
{
fscanf( texto, "%s", word ); //lê o arquivo texto
printf("\n PALAVRA %d => %s ", contador_in, word );
strcpy( textos[contador_in], word ); //a strcpy (string copy) copia do texto para a variável
}

fclose(texto); //fecha o arquivo
*size = contador_in;
retorno = OK;
}
return( retorno );
}


// rotina que escreve o arquivo dados.bkp
// retorna se deu erro ou se foi ok
// parm textos passa linha a linha do arquivo
// parm size passa o numero de linhas
int write_out( lista_textos textos, int size )
{
int contador_out, retorno;
FILE *out;

out = fopen("dados.bkp", "wt"); //wt (write text) cria um novo arquivo
if ( out == NULL)
{
fprintf(stderr, "Erro na abertura da saida\n");
retorno = O_ERR;
}
else
{
for ( contador_out = 0; contador_out < size; contador_out++ )
{
fprintf( out, "%s\n", textos[contador_out] ); /*a cada letra da variável $textos, o fprintf escreve para o arquivo(out) que é o dados.bkp*/
}

fclose(out);
retorno = OK;
}

return( retorno );
}


int main(void)
{
int retorno, size;
lista_textos textos;

retorno = le_in( textos, &size );

if (retorno == OK)
{

//leitura terminou, começa a escrita
retorno = write_out( textos, size );
}

getch();
return( retorno );
}








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts