Ler e escrever um arquivo de texto usando o Octave

Neste tutorial, abordaremos a leitura e a escrita de arquivos de texto utilizando o Octave.

Escrever um novo arquivo

Para criar um novo arquivo, empregue a função fopen(), especificando o nome do arquivo e o modo de acesso "w". Veja o exemplo:

>> MyFile=fopen("test2.txt", "w");

A seguir, insira dois registros no arquivo por meio da função fprintf()

>> fprintf(MyFile, "1 record \n");
>> fprintf(MyFile, "2 record \n");

Como alternativa, é possível também utilizar a função fputs()

>> fputs(MyFile, "1 record \n");
>> fputs(MyFile, "2 record \n");

O resultado, em ambos os casos, é idêntico.

Nota. Ao final de cada string, inclua o símbolo de nova linha \n para iniciar um novo registro. Caso contrário, o próximo comando printf() prosseguirá no mesmo registro.

Ao concluir a inserção dos registros, encerre o arquivo com a função fclose()

>> fclose(MyFile);

Ler um arquivo

Para a leitura de um arquivo de texto, recorra à função fopen(), indicando o nome do arquivo e o modo de leitura "r".

Associe o arquivo a uma variável, como MyFile

>> MyFile=fopen("test2.txt", "r");

É importante lembrar que este arquivo contém dois registros.

Para acessar um registro do arquivo, utilize o comando fgetl()

>> fgetl(MyFile)

Este comando exibe o conteúdo do primeiro registro

ans = 1 record

Para acessar o segundo registro, repita o comando fgetl()

>> fgetl(MyFile)

O comando apresentará o conteúdo do último registro

ans = 2 record

Caso execute o comando fgetl() mais uma vez, o retorno será -1, indicando o final do arquivo.

>> fgetl(MyFile)

ans = -1

Finalize a operação fechando o arquivo.

>> fclose(MyFile);

Ler o arquivo com um loop

É viável ler o arquivo utilizando uma estrutura de repetição, evitando a necessidade de repetir o comando fgetl()

MyFile=fopen("test4.txt", "r");
eof=0;
while eof==0
rec =fgetl(MyFile)
if (rec==-1) eof=1; endif
end
fclose(MyFile)

Adicionar registros a um arquivo já existente

Para adicionar registros a um arquivo pré-existente, abra-o no modo de anexação com a função fopen() e o modo 'a'.

Por exemplo, ao abrir o arquivo "test2.txt", que já contém dois registros.

>> MyFile=fopen("test2.txt", "a");

Posteriormente, adicione um novo registro utilizando as funções fprintf() ou fputs()

>> fprintf(MyFile, "3 record \n");

Ao finalizar a adição, encerre o arquivo

>> fclose(MyFile);

O arquivo agora possui três registros.

Modos de acesso ao arquivo

Existem diversos modos de acesso, além de leitura ('r') e escrita ('w'):

'r' = leitura
'w' = escrita (cria um novo arquivo)
'a' = anexação (adiciona ao final de um arquivo existente)
'r+' = leitura e escrita
'w+' = escrita e leitura (cria um novo arquivo)
'a+' = leitura e anexação (adiciona ao final)

Nesta aula, você aprendeu a manipular arquivos de texto no Octave de forma eficiente.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Arquivos em Octave

FAQ