terça-feira, 28 de julho de 2009

Tutorial Scilab - 8 [Usando arquivos]

[English version here.]

Quanto tempo hein? Mas finalmente estou retomando os meus compromissos (dentre eles, o MultiSign).

Pois bem, vamos ver algo sobre manipulação de arquivos com o Scilab agora.

No Scilab, existem diversas funções para manipular arquivos tanto arquivos ASCII quanto binários.

Os aquivos são importantes para melhor gerenciar dados de entrada e resultados obtidos (óbvio não acham?).

Como a maioria deve saber o que é um arquivo, vamos dar continuidade ao post.

Uma boa forma de conhecer as formas de manipulação de arquivos no Scilab é com o help, olhe como acessar o help na figura abaixo:


Na tela de ajuda, digite: file manage e selecione a primeira opção file(.).

Esta função é semelhante à função fopen(.) da linguagem C.

No help, é possível ver várias informações sobre a função file(.).

Algumas das outras funções funções de manipulação de arquivos no Scilab são:

  • save;
  • load;
  • mopen;
  • mclose;
  • writeb;
  • readb.
No momento, vamos nos limitar as funções:

  • read;
  • write.

A função write(.) cria arquivos ASCII e a função read(.) carrega os arquivos em variáveis.

As variáveis envolvidas nestas funções geralmente são matrizes e/ou vetores. Vamos aos exemplos agora:


-->x = rand(5,5)
x =

0.2113249 0.6283918 0.5608486 0.2320748 0.3076091
0.7560439 0.8497452 0.6623569 0.2312237 0.9329616
0.0002211 0.6857310 0.7263507 0.2164633 0.2146008
0.3303271 0.8782165 0.1985144 0.8833888 0.312642
0.6653811 0.0683740 0.5442573 0.6525135 0.3616361

-->write("test_data.dat", x);

-->y1 = read("test_data.dat", 1, 2) // 1 linnha e 2 colunas
y1 =

0.2113249 0.6283918

-->y2 = read("test_data.dat", 2, 2) // 2 linhas and 2 colunas
y2 =

0.2113249 0.6283918
0.7560439 0.8497452

-->y3 = read("test_data.dat", -1, 1) // -1 indica que se deve ler todas as linhas
y3 =

0.2113249
0.7560439
0.0002211
0.3303271
0.6653811

-->>y4 = read("test_data.dat", -1, 5) // lê o arquivo inteiro
y4 =

0.2113249 0.6283918 0.5608486 0.2320748 0.3076091
0.7560439 0.8497452 0.6623569 0.2312237 0.9329616
0.0002211 0.6857310 0.7263507 0.2164633 0.2146008
0.3303271 0.8782165 0.1985144 0.8833888 0.312642
0.6653811 0.0683740 0.5442573 0.6525135 0.3616361


O arquivo test_data.dat é apresentado na figura a seguir (clique na figura para vê-la em tamanho real).

Nenhum comentário: