Simplificando, os arquivos de texto contêm legíveis ASCII personagens. Podemos pensar em trabalhar com um arquivo de texto no Delphi como análogo a reproduzir ou gravar informações em uma fita de videocassete.
Embora seja possível fazer alterações em um arquivo de texto, pule ao processar informações ou adicione alguns dados ao arquivo que não sejam No final, é aconselhável usar um arquivo de texto somente quando sabemos que estamos trabalhando com texto comum e não há operações desse tipo. necessário.
Os arquivos de texto são considerados para representar uma sequência de caracteres formatados em linhas, em que cada linha é finalizada por um marcador de fim de linha (um Combinação CR / LF).
O TextFile e o método de atribuição
Para começar a trabalhar com arquivos de texto, você deve vincular um arquivo em um disco a uma variável de arquivo no seu código - declare uma variável do tipo TextFile e use o procedimento AssignFile para associar um arquivo em um disco a um arquivo variável.
Lendo informações de um arquivo de texto
Se quisermos ler novamente o conteúdo de um arquivo em uma lista de cadeias, apenas uma linha de código fará o trabalho.
Para ler informações de um arquivo linha por linha, precisamos abrir o arquivo para entrada usando o Redefinir procedimento. Depois que um arquivo é redefinido, podemos usar ReadLn para ler informações de um arquivo (lê uma linha de texto de um arquivo e depois passa para a próxima linha):
Após adicionar uma linha de texto de um arquivo a um componente de memorando, SomeTxtFile precisa ser fechado. Isso é feito pelo Fechar palavra-chave
Também podemos usar o procedimento de leitura para ler informações de um arquivo. A leitura funciona como o ReadLn, exceto que não move o ponteiro para a próxima linha.
EOF - Fim do arquivo
Use a função EOF para garantir que você não esteja tentando ler além do final do arquivo. Digamos que queremos exibir o conteúdo do arquivo nas caixas de mensagens - uma linha de cada vez até chegarmos ao final de um arquivo:
Nota: É melhor usar Enquanto loop do que o loop Até para levar em conta a possibilidade (improvável) de que o arquivo exista, mas não contenha dados.
Escrevendo texto em um arquivo
o WriteLn é provavelmente a maneira mais comum de enviar informações individuais para um arquivo. O código a seguir lerá um texto de um componente Memo1 (linha por linha) e o enviará para algum arquivo de texto recém-criado.
Dependendo do estado do arquivo fornecido para o procedimento de Reescrita, ele cria um novo arquivo (abre o arquivo para saída) com o nome atribuído a SomeTextFile. Se um arquivo com o mesmo nome já existir, ele será excluído e um novo arquivo vazio será criado em seu lugar. Se o SomeTextFile já estiver aberto, ele será fechado e recriado. A posição atual do arquivo é definida para o início do arquivo vazio.
Nota: Memo1.Lines. SaveToFile ('c: \ MyTextFile.txt') fará o mesmo.
Às vezes, basta adicionar alguns dados de texto ao final de um arquivo existente. Se for esse o caso, chamaremos Acrescentar para garantir que um arquivo seja aberto com acesso somente gravação com o ponteiro do arquivo posicionado no final do arquivo. Algo como:
Esteja ciente das exceções
Em geral, você deve sempre usar manipulação de exceção ao trabalhar com arquivos. A E / S está cheia de surpresas. Sempre use CloseFile em um bloco final para evitar a possibilidade de corromper o FAT de um usuário. Todos os exemplos anteriores devem ser reescritos da seguinte maneira:
Manipulando com arquivos estruturados
O Delphi tem a capacidade de lidar com arquivos ASCII e arquivos que contêm dados binários. Aqui estão as técnicas para trabalhar com arquivos digitados e não digitados (binários).