[SP-pm] Write Binary!
Luis Motta Campos
luismottacampos em yahoo.co.uk
Quinta Abril 26 10:30:16 PDT 2007
On Apr 26, 2007, at 5:43 PM, Henrique Rennó wrote:
> Fala Fred!
> Existe um programa muito usado aqui no trabalho chamado GrADS.
> Basicamente ele é um plotador, um gerador de gráficos. Para ele
> plotar os gráficos, os valores a serem trabalhados devem estar em
> um arquivo no formato binário (existem outros formatos que ele lê
> também mas binário é o mais geral).
>
> Os programas que faço para trabalhar com esses dados estão todos em
> C que passei dos que estavam em FORTRAN. No FORTRAN deve-se abrir o
> arquivo passando parâmetros tipo 'stream' and 'unformatted', sem
> esses parâmetros não dá certo. Já em C seria apenas a opção "b"
> para o fopen. Para escrever no arquivo, em FORTRAN usa-se o write
> passando para ele um vetor(M*N) onde N é o número de elementos da
> matriz de 2 dimensões com M linhas e N colunas na ordem linha 1,
> colunas 1-N, linha2, colunas 1-N, ..., linhaM, colunas 1-N, etc. Em
> C não dá certo usando o fscanf ou qualquer outra função que utiliza
> formatação, já o fwrite funciona como eu havia descrito antes:
> fwrite(matriz, sizeof(float), M*N, fpointer)
>
> Agora estou querendo passar para perl apenas por aprendizado.
> Tentei o pack com formatação "B*" como o Luis Motta disse e não
> funcionou.
Isso depende da sua máquina. Leia "perldoc -f pack" e "perldoc -f
unpack" para se informar sobre os formatos, e descubra qual é o que
você precisa. ;-)
Putamplexos!
--
Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,
Perl fanatic evangelist, and amateur {cook, photographer}
Mais detalhes sobre a lista de discussão SaoPaulo-pm