Ir ao conteúdo
  • Cadastre-se

Manipulação de arquivos Binários, tipificados


Posts recomendados

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!

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

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...

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...