Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - 日本語

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Ajuda Scilab >> Funções de Entrada/Saída > read

read

Leitura de matrizes

Seqüência de Chamamento

[x]=read(file-desc,m,n,[format])
[x]=read(file-desc,m,n,k,format)

Parâmetros

file-desc

string especificando o nome do arquivo ou valor inteiro especificando uma unidade lógica (fortran)(ver file).

m, n

inteiros (dimensões da matriz x). Ajuste m=-1 se você desconhece o número de linhas, para que todo o arquivo seja lido.

format

string, especifica um formato "Fortran". Este string deve começar com um parêntese direito e terminar com um parêntese esquerdo. Formatos não podem misturar pontos flutuantes, inteiros ou modo de edição de caractere

k

inteiro ou vetor de inteiros

Descrição

Lê linha após linha a matriz x mxn (n=1 para cadeia de caracteres) no arquivo file-desc (string ou inteiro). Cada linha da matriz x começa em uma nova linha do arquivo file-desc. Dependendo de format, uma dada linha da matriz x pode ser lida de mais de uma linha do arquivo file-desc.

O tipo do resultado dependerá do formato especificado. Se format contém apenas os descritores (d,e,f,g) a função tenta ler dados numéricos (o resultado é uma matriz de números reais).

Se format contém apenas o descritor a a função tenta ler strings (o resultado é um vetor coluna de strings). Neste caso, n deve ser igual a 1. Aviso: Os strings serão truncados se tiverem tamanho maior que 4093.

Exemplos para format:

(1x,e10.3,5x,3(f3.0))
(10x,a20)

Quando format é o omitido, os dados são lidos utilizando-se o formato numérico livre: espaços em branco, vírgulas e barras podem ser utilizados como separadores de dados, n*v pode ser utilizado para representar n ocorrências do valor n.

Um arquivo de acesso direto pode ser utilzado na presença de um parâmetro k que é um vetor de números de gravações a serem lidas (uma gravação por linha), logo m deve ser m=prod(size(k)).

Para ler no teclado use read(%io(1),...).

Observação

A última linha de cada arquivo de dados devemser terminada por uma nova linha (newline) a ser levada em conta.

Exemplos

mdelete(TMPDIR + '/foo');
A = rand(3,5);
write(TMPDIR + '/foo', A);
B = read(TMPDIR + '/foo', 3, 5);
B = read(TMPDIR + '/foo', -1, 5);
read(%io(1), 1, 1, '(a)')  // espera por entrada do usuário

Ver Também

  • file — Gerenciamento de arquivos
  • readb — leitura de arquivo FORTRAN binário
  • write — Escrita em arquivo formatado
  • x_dialog — Dialog for interactive multi-lines input.
  • mscanf
  • mfscanf — reads input from the standard input (interface to the C scanf function)
  • msscanf
  • fscanfMat — Reads a Matrix from a text file.
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Mar 03 11:00:35 CET 2011