Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
aula09_7extra.c /* Aula09_7extra.c Pagina 6 de 8 (EXTRA)- apostila NCE Programa para ler e escrever blocos de dados.*/ #include <stdio.h> #include <stdlib.h> #include <string.h> struct pessoa //tipo da struct { char nome[20]; int idade; float saldo; }; main() { FILE *p; //descritor do arquivo struct pessoa cliente, cliente2; // elemente deste tipo pessoa printf("\n--------------Le e escreve blocos de comandos--------------\n\n"); /************* Abre arquivo binario para escrita ****************************************/ if((p=fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.dat", "wb"))==NULL) { printf("\nArquivo nao encontrado!\n\n"); system("PAUSE"); exit(1); } printf("\nNome: "); scanf("%s", cliente.nome); printf("\nIdade: "); scanf("%d", &cliente.idade); printf("\nSaldo: "); scanf("%f", &cliente.saldo); if(fwrite(&cliente, sizeof(struct pessoa), 1, p)!= 1) // Escreve a variável Pi. { printf("Erro na escrita do arquivo"); } fclose(p); /************* Fecha arquivo binario para escrita ****************************************/ /************* Abre arquivo binario para leitura ****************************************/ if((p=fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.dat", "rb"))==NULL) { printf("Erro na abertura do arquivo"); system("PAUSE"); exit(1); } if(fread(&cliente2, sizeof(struct pessoa), 1, p)!= 1) // Lê em pilido o valor da variável armazenada anteriormente. { printf("Erro na escrita do arquivo"); } printf("\nNome: %s, idade: %d, saldo: %.2f", cliente2.nome, cliente2.idade, cliente2.saldo); fclose(p); /************* Fecha arquivo binario para leitura ****************************************/ printf("\n\n"); system("PAUSE"); } aula09_0.c /* Aula09_0.c Pagina 2 de 8 - apostila NCE Programa para abrir e fechar um arquivo*/ #include<stdio.h> #include<stdlib.h> main() { FILE *p; //descritor do arquivo printf("\n--------------Abrir e Fechar arquivo--------------\n\n"); //p = fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.txt", "w"); p = fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.txt", "r"); if(!p) { printf("\nArquivo nao encontrado!\n\n"); system("PAUSE"); exit(1); //fazer teste sem exit } fclose(p); system("PAUSE"); } aula09_1.c /* Aula09_1.c Pagina 3 de 8 - apostila NCE Programa para escrever no arquivo usando putc.*/ #include<stdio.h> #include<stdlib.h> #include<string.h> main() { FILE *p; //descritor do arquivo char string[100]; int i, tamanho; printf("\n--------------Escreve caracteres no arquivo--------------\n\n"); p = fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.txt", "w"); if(!p) { printf("\nArquivo nao encontrado!\n\n"); system("PAUSE"); exit(1); //fazer teste sem exit } printf("\nEntre com a string a ser gravada no arquivo\n"); gets(string); /*tamanho = strlen(string); for (i=0;i<tamanho;i++) */ for (i=0;string[i];i++) { putc(string[i], p); //grava a string caracter por caracter } fclose(p); system("PAUSE"); } aula09_2.c /* Aula09_2.c Pagina 3 de 8 - apostila NCE Programa para ler do arquivo usando getc.*/ #include<stdio.h> #include<stdlib.h> #include<string.h> main() { FILE *p; //descritor do arquivo char c; int i, tamanho; printf("\n--------------Retorna um caracter lido do arquivo--------------\n\n"); p = fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.txt", "r"); if(!p) { printf("\nArquivo nao encontrado!\n\n"); system("PAUSE"); exit(1); //fazer teste sem exit } while((c = getc(p))!= EOF) //EOF - é um #define já definido no <stdio.h> { printf("%c", c); //retorna um caracter lido enquanto não terminhar o arquivo } printf("\n\n"); fclose(p); system("PAUSE"); } aula09_3.c /* Aula09_3.c Pagina 4 de 8 - apostila NCE Programa junta leitura e escrita.*/ #include<stdio.h> #include<stdlib.h> #include<string.h> main() { FILE *p; //descritor do arquivo char c, string[30], frase[80]= "O nome deste arquivo eh: "; int i, tamanho; printf("\n--------------Abre e fecha arquivo lendo e escrevendo--------------\n\n"); //Para gravar em um arquivo printf("Escreva o nome do arquivo: "); gets(string); p = fopen(string, "w"); if(!p) { printf("\nArquivo nao encontrado!\n\n"); system("PAUSE"); exit(1); //fazer teste sem exit } strcat(frase, string); for(i=0;frase[i];i++) { putc(frase[i], p); } fclose(p); //para ler um arquivo p = fopen(string, "r"); c = getc(p); while(!feof(p)) //compare com aula09_2 { printf("%c", c); //retorna um caracter lido enquanto não terminhar o arquivo c = getc(p); } fclose(p); printf("\n\n"); system("PAUSE"); } aula09_4.c /* Aula09_4.c Pagina 5 de 8 - apostila NCE Programa que escreve no arquivo com fputs().*/ #include<stdio.h> #include<stdlib.h> #include<string.h> main() { FILE *p; //descritor do arquivo char linha[51]; int i; printf("\n--------------Escreve no arquivo com fputs()--------------\n\n"); p = fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.txt", "w"); printf("\nEscreva um texto com 3 linhas\n"); for (i=0; i<3; i++) { // gets(linha); Não lê o enter (\n) digitado. fgets(linha, 50, stdin); // lê o enter (\n) digitado. fputs(linha, p); } fclose(p); printf("\n\n"); system("PAUSE"); } aula09_5.c /* Aula09_5.c Pagina 5 de 8 - apostila NCE Programa que lê o conteudo do arquivo com fgets().*/ #include<stdio.h> #include<stdlib.h> #include<string.h> main() { FILE *p; //descritor do arquivo char c, linha[51]; int i, tamanho; printf("\n--------------Le conteudo do arquivo com fgets()--------------\n\n"); p = fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.txt", "r"); /* while(!feof(p)) //compare com aula09_2 TESTA { fgets(linha, 50, p); PEGA printf("%s", linha); //retorna um caracter lido enquanto não terminhar o arquivo } */ fgets(linha, 50, p); // PEGA while(!feof(p)) //compare com aula09_2 TESTA { printf("%s", linha); //retorna um caracter lido enquanto não terminhar o arquivo fgets(linha, 50, p); } fclose(p); printf("\n\n"); system("PAUSE"); } aula09_6.c /* Aula09_6.c Pagina 5 de 8 - apostila NCE Programa para informar mensagem de erro em arquivo (ferror ou perror).*/ #include <stdio.h> #include <stdlib.h> #include <string.h> main() { FILE *p; //descritor do arquivo char string[100]; printf("\n--------------Mensagem de erro em arquivo--------------\n\n"); if((p=fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.txt", "w"))==NULL) { printf("\nArquivo nao encontrado!\n\n"); system("PAUSE"); exit(1); } do { printf("\nDigite uma nova string. Para terminar, digite <enter>: "); gets(string); // fgets(strting, 99, stdin); pode? Sim, mas teria que tirar o putc e alterar o while para >1. // fclose(p); //(para simular o ferror) fputs(string, p); putc('\n', p); // pula linha teste: putc("\n", p); -> errado! if(ferror(p)) { perror("Erro na gravação"); // da informação de que tipo de erro ocorreu // printf("Erro na gravaçao"); -> só da a mensagem fclose(p); system("PAUSE"); exit(1); } } while (strlen(string)>0); // tamanho da string igual a zero. fclose(p); system("PAUSE"); } aula09_7.c /* Aula09_7.c Pagina 6 de 8 - apostila NCE Programa para ler e escrever blocos de dados.*/ #include <stdio.h> #include <stdlib.h> #include <string.h> main() { FILE *p; //descritor do arquivo float pi = 3.1416; float pilido; printf("\n--------------Le e escreve blocos de comandos--------------\n\n"); /************* Abre arquivo binario para escrita ****************************************/ if((p=fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.dat", "wb"))==NULL) { printf("\nArquivo nao encontrado!\n\n"); system("PAUSE"); exit(1); } if(fwrite(&pi, sizeof(float), 1, p)!= 1) // Escreve a variável Pi. { printf("Erro na escrita do arquivo"); } fclose(p); /************* Fecha arquivo binario para escrita ****************************************/ /************* Abre arquivo binario para leitura ****************************************/ if((p=fopen("d:\\meus documentos\\estacio de sa\\curso c - NCE\\teste1.dat", "rb"))==NULL) { printf("Erro na abertura do arquivo"); system("PAUSE"); exit(1); } if(fread(&pilido, sizeof(float), 1, p)!= 1) // Lê em pilido o valor da variável armazenada anteriormente. { printf("Erro na escrita do arquivo"); } printf("\nO valor de Pi, lido do arquivo eh: %.4f", pilido); fclose(p); /************* Fecha arquivo binario para leitura ****************************************/ printf("\n\n"); system("PAUSE"); }
Compartilhar