var
NomeOriginal: String;
{ ... }
Memo1.Clear; // Limpa o conteúdo do Memo1
NomeOriginal := Edit1.Text;
AssignFile(arquivo, Nomeoriginal); // Associa a variável arquivo ao arquivo externo informado pelo usuário
{$I-} // desativa a diretiva de Input
Reset(arquivo); // Abre o arquivo texto para leitura
{$I+} // ativa a diretiva de Input
if (IOResult <> 0) // verifica o resultado da operação de abertura
then Memo1.Lines.Add('Erro na abertura do arquivo !!!') // Se der erro na abertura, informa
else begin
while (not eoln(arquivo)) do // verifica se o ponteiro de arquivo atingiu a marca de final de linha
begin
read(arquivo, ConteudoDaLinha); // Lê a primeira Linha do arquivo . O conteúdo lido é transferido para a variável ConteudoDaLinha
Memo1.Lines.Add(ConteudoDaLinha);
RenameFile(NomeOriginal, ConteudoDaLinha)
{...}