A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a Objetos I Material IV-Bimestre Criando um.

Apresentações semelhantes


Apresentação em tema: "Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a Objetos I Material IV-Bimestre Criando um."— Transcrição da apresentação:

1 Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a Objetos I Material IV-Bimestre Criando um arquivo de dados. Abrindo e fechando um arquivo de dados. Processando um arquivo de dados. Processo de leitura, Escrita e Inserção em Arquivo, Menus e Dialogos site : http://www1.univap.br/~wagner Prof. Responsáveis Wagner Santos C. de Jesus 1

2 Arquivo de Dados Muitas informações precisam ler e escrever informações de um dispositivo de memória auxiliar. Essas informações são armazenadas no dispositivo na forma de um arquivo de dados. Os arquivos de dados nos permitem armazenar informações permanentemente e acessar e alterar essas informações sempre que necessário. 2

3 Usando Streams. A manipulação de arquivo em C normalmente é feita por intermédio de um recurso do sistema operacional denominado Stream (que vem a ser cadeia de caracteres ou bytes). Normalmente em C manipulamos arquivos de texto que são arquivo não formatados ou seja esse tipo de manipulação deve ser feita inteiramente por intermédio do programador que desenvolve a aplicação procedimento que da origem ao que chamamos de estrutura de banco de dados que são complexas e demando conhecimentos matemáticos de relacionamento intercessão. 3

4 Criando um arquivo de dados do tipo texto. Para se trabalhar com um arquivo de dados do tipo texto, o primeiro passo é estabelecer um buffer, onde as informações são armazenadas temporariamente durante a transferencia entre memória e computador (Dispositivo de gravação). 4

5 5

6 Criando um Buffer. (FILE) Para se criar um buffer é necessário usar o comando FILE que é um tipo de estrutura especial que estabelece o buffer. Para dar nome ao buffer colocamos uma variável do tipo ponteiro. 6

7 Para usar FILE é necessário utilizar a biblioteca. #include Sintaxe para criação de um Buffer. FILE * ; Exemplo : FILE *pt; 7

8 Abrindo e criando um arquivo - fopen() fopen() : Para se manipular um arquivo é preciso cria-lo para poder usar o recurso de leitura, e gravação. A função fopen retorna um ponteiro para o início do buffer associado ao arquivo. Um valor NULL é retornado quando o arquivo de dados não puder ser encontrado. 8

9 Sintaxe : = fopen(, ); 9

10 Exemplo : pt = fopen("c:/diretorio/teste.txt","r+"); Obs : Este exemplo abre um arquivo já existente para leitura e gravação. 10

11 Escrevendo dados em um Arquivo - fprintf() Para gravar uma informação em um arquivo usamos a função fprintf(), que permite escrever um dado no buffer. Sintaxe: fprintf(,<cadeia_Caracteres); Obs : A cadeia de ser sempre do tipo char. 11

12 Exemplo : fprintf(pt,"Gravando Arquivo"); 12

13 Fechando um arquivo de dados - fclose() Para se fechar um arquivo usamos a função fclose(), que permite remover todos os dados do buffer para o disco. Sintaxe : fclose( ); Exemplo : fclose(pt); 13

14 Exemplo de um programa para escrever um dado no arquivo. FILE *fp; fp = fopen("c:/ProjC++/teste.txt","r+"); fprintf(fp,"Corinthians do Rivelino..\n"); fclose(fp); 14

15 Leitura de um arquivo de dados - fgets(), feof(). Permite realizar a leitura de um ou mais registros em arquivo cada vez que fgets() é acionado desloca o ponteiro para o próximo registro até encontrar o final do arquivo. Que é indicado pela função feof(), que retorna verdadeiro caso o final do arquivo seja encontrado. Sintaxe : fgets(,, ); feof( ); 15

16 Exemplo : char v[30]; fp = fopen(arq,"r+"); while(!feof(fp)) { fgets(v,30,fp); ShowMessage(v); } fclose(fp); 16

17 Verificando se um arquivo existe ou não - FileExists(). FileExists() - Retorna um operador booleano se o arquivo existir no diretório específicado. Sintaxe : = FileExists( ); Exemplo : boolean t = FileExists("c:/Projeto/lista.txt"); 17

18 Uma estrutura vem a ser um tipo especial de dados que permite agrupar tipo de diferentes de dados em um só ambiente com se o conjunto fosse apenas um. Criando uma Estrutura de registros 18

19 Implementado a criação de uma estrutura de registros - struct struct - cria uma estrutura de registros para um determinado grupo de dados. Obs: A estrutura deve ser declarada no programa de forma global. Sintaxe : struct { ; } ; 19

20 Exemplo : struct dados { int n; AnsiString nome; double salario; }entrada; 20

21 Usando uma estrutura de registros. void __fastcall TForm1::Button1Click(TObject *Sender) { entrada.nome = "Maria da Silva"; entrada.salario = 3000.90; ShowMessage(entrada.salario); } 21

22 Uma estrutura de registro pode ser associada a um arquivo formando assim um banco de dados. Exemplo de arquivo com estrutura de registros. struct dados { char nome[30]; char salario[12]; }entrada; 22

23 Exemplo Gravação de uma estrutura em um arquivo de texto. void __fastcall TForm1::Button1Click(TObject *Sender) { FILE *fp; fp = fopen("c:/ProjC++/teste.txt","w+"); StrCopy(entrada.nome,"Maria da Silva,"); StrCopy(entrada.salario,"3000.90\n"); fprintf(fp,entrada.nome); fprintf(fp,entrada.salario); fclose(fp); } 23

24 Mudando o nome do Arquivo. RenameFile() : Troca o nome do arquivo determinado em um diretório. Sintaxe : RenameFile(, ); Exemplo : RenameFile("c:/Projeto/teste.txt","c:/Projeto/testando.txt"); 24

25 DeleteFile() : Apaga um arquivo de um determinado diretório. Sintxe : RenameFile( ); Exemplo : DeleteFile("c:/Projeto/logica.txt"); 25

26 system() : Executa um comando do sistema operacional. Sintaxe : system( ); Exemplo : system("sol.exe"); 26

27 Permite a criação de uma região para digitação de texto. Memo deve ser usado com a propriedade Lines. Para adicionar um texto ao memo usamos método add(). Exemplo : Memo1->Lines->Add("Teste"); 27

28 Para contar o número de linhas de um texto usamos método count. Exemplo : int x = Memo1->Lines->Count; Para obter o uma linha de um texto usa-se o método. Strings[]. Exemplo : int i = 1; AnsiString p = Memo1->Lines->Strings[i]; 28

29 Para Gravar os dados de um determinado texto. SaveToFile(). Exemplo : Memo1->Lines->SaveToFile("teste.txt"); 29

30 Para Carregar os dados de um determinado texto. LoadFormFile(). Sintaxe: Memo1->Lines->LoadFromFile("teste.txt"); 30

31 SaveDialog e OpenDialog Paleta Dialog, permite criar uma janela onde o usuário poderã escolher um arquivo para abertura ou gravação. PropriedadesValores Default*.txt (extensão) FilenameCaminho e nome do arquivo FilterTexto|*.txt (nome e extensão do arquivo) InitialDirC:\lixo (Diretório padrão da caixa) 31

32 Método Execute() Executa a caixa de dialogo onde o arquivo escolhido será enviado para a propriedade FileName. Exemplo : SaveDialog1->Execute(); 32

33 Saída da caixa SaveDialog 33

34 FileName : Permite exibir o caminho e o nome do arquivo que foi escolhido. AnsiString cam = SaveDialog1->FileName; No exemplo acima o caminho armazenado na variável cam será c:\lixo\cripotografia.txt 34

35 MainMenu : Determina um menu de opções. (Basta digitar duplo click no objeto) Escrever opções na propriedade caption Para criar um submenu basta clicar na linha de baixo e escrever na propriedade caption. 35

36 Resultado na Execução do Menu 36

37 O código deverá ser colocado no evento OnClick do objeto MainMenu1 void __fastcall TForm1::Novo1Click(TObject *Sender) { ShowMessage(Click na opção Novo); } 37


Carregar ppt "Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a Objetos I Material IV-Bimestre Criando um."

Apresentações semelhantes


Anúncios Google