Escrevendo em arquivos


Escrevendo para um arquivo texto:


action! write

Escreve em um arquivo, criando-o se necessário.

>> write %myFirstFile.txt "Once upon a time..."

Acrescentando (Appending) à um arquivo texto:
/append

Se você simplesmente usar write de novo no arquivo criado acima, ele vai ser sobrescrito (original apagado). Se você quer acrescentar texto a ele, use write/append:

>> write/append %myFirstFile.txt "there was a house."

Seu arquivo agora tem "Once upon a time...there was a house" .

Escrevendo uma série para um arquivo fazendo de cada elemento da série uma linha do arquivo:

Now lets add another file with 3 lines of text:

>> write/lines %mySecondFile.txt ["First line;" "Second line;" "Third line."]

Appending full lines:

>> write/append/lines %mySecondFile.txt ["Fourth line;" "Fifth line;" "Sixth line."]

Seu arquivo agora está assim:

First line;
Second line;
Third line.
Fourth line;
Fifth line;
Sixth line.

Note que você poderia ter escrito write/lines/append. A ordem dos refinamentos não faz diferença.

Substituindo caracteres em um arquivo:

Para substituir caracteres em um arquivo texto, começando na posição n+1, use  write/seek %<file> <n> :

>> write/seek %myFirstFile.txt "NEW TEXT" 5

Agora aquele arquivo criado no início do capítulo tem: "Once NEW TEXTime...there was a house."

Refinamentos de Write :

/binary      => Preserva o conteúdo exato (binário).

/lines       => Escreve cada valor de um bloco em uma nova linha..

/info        =>

/append      => Escreve no fim do arquivo.

/part        => Escrita parcial, dado o número de unidades.

/seek        => Escreve a partir de uma posição específica.

/allow       => Especifica atributos de proteção.

/as          => Escreve em uma codificação específica, o default é 'UTF-8.


function! save

Salva o valor, bloco ou outro tipo de dados para um arquivo, URL, binário ou string.

Diferença entre write e save:

>> write %myFourthFile.txt [11 22 "three" "four" "five"]

Seu arquivo agora tem: [11 22 "three" "four" "five"]

>> save %myFourthFile.txt [11 22 "three" "four" "five"]

Seu arquivo agora tem:  11 22 "three" "four" "five"

Um uso importante de  save é de simplificar o salvamento de scripts Red para que possam ser interpretados usando a ação  do :

>> save %myProgram.r [Red[] print "hello"]
>> do %myProgram.r
hello

doload e save são entendidos melhor se você pensar no console do Red como a tela de um daqueles computadores dos anos 80, rodando alguma variação da linguagem Basic. Você pode load o seu programa, salvá-lo com save , ou rodá-lo com do .