Ir ao conteúdo
  • Cadastre-se
Anderson Babinski

Manipulação de arquivos Binários, tipificados

Recommended Posts

Bom, simplesmente, não consigo entender o que está dando errado.

Ocorre, que, quando era para fazer a leitura do arquivo, não faz. Sendo que o mesmo existe, e tem dados gravados nele.

Alguém pode me explicar o que faço de errado?

 

Procedimento de escrever no arquivo:

// procedimento para salvar arquivo com usuario e senha em binarioprocedure TFrm_login.arq_lembrarlogin(user, pas: string);var  login: Tlogin;  arquivo: file of Tlogin;begin  AssignFile(arquivo, 'temp_login.dat');  {$I-}  Reset(arquivo);  {$I+}  if (IOResult <> 0) then    Rewrite(arquivo);  Seek(arquivo, filesize(arquivo));  with login do  begin  usuario:=user;  senha:= pas;  end; // fim with  write(arquivo, login);  CloseFile(arquivo);end; // fim lembrar senha, arquivo

Procedimento de ler o arquivo:

// inicio para procedimento de leitura de login, caso esteja marcado lembrar sebgaprocedure TFrm_login.arq_lerlogin;var  login: Tlogin;  arquivo: file of Tlogin;begin  AssignFile(arquivo, 'temp_login.dat');  {$I-}  Reset(arquivo);  {$I+}  //if (IOResult <> 0) then  //exit;  while not eof (arquivo) do  begin    Read(arquivo, login)  end;  CloseFile(arquivo);    with login do  begin    ShowMessage(usuario);    ShowMessage(senha);  end;

Help, please!

 

 

Administrador, consegui resolver meu problema;

Na verdade meu código não tinha nada de errado, eu estava errando na hora que chamava o procedimento, pois estava passando os parametros errado!

 

Pode trancar o tópico, obg!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que demonstra que não está lendo o arquivo?

 

Creio que seja mais provável que esteja lendo, mas que não esteja tradando os dados corretamente.

 

 

Vide código comentário:
 

// procedimento para salvar arquivo com usuario e senha em binarioprocedure TFrm_login.arq_lembrarlogin(user, pas: string);var  login: Tlogin;  arquivo: file of Tlogin;begin  AssignFile(arquivo, 'temp_login.dat');  {$I-}  Reset(arquivo);  {$I+}  if (IOResult <> 0) then    Rewrite(arquivo);  Seek(arquivo, filesize(arquivo));  with login do  begin  usuario:=user; //qual o valor de login.usuario nesse momento?  senha:= pas; //qual o valo de login.senha nesse momento  end; // fim with  write(arquivo, login); //qual o valor de login?  CloseFile(arquivo);end; // fim lembrar senha, arquivo

Ou seja, abriu o arquivo e não fez nada com ele.

 

 

E

// inicio para procedimento de leitura de login, caso esteja marcado lembrar sebgaprocedure TFrm_login.arq_lerlogin;var  login: Tlogin;  arquivo: file of Tlogin;begin  AssignFile(arquivo, 'temp_login.dat');  {$I-}  Reset(arquivo);  {$I+}  //if (IOResult <> 0) then  //exit;  while not eof (arquivo) do  begin    Read(arquivo, login) //ler o arquivo, mas e depois? ou seja, ler, ler, ler... e sai do loop.  end;  CloseFile(arquivo);    with login do //aqui ele vai está com o último login do arquivo...  begin    ShowMessage(usuario);    ShowMessage(senha);  end;

Leu todos os login e exibiu os dados do úlimo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×