Página 2 de 2

Re: Abrir archivos binarios de tamaño de 50 megas con Perl

NotaPublicado: 2014-05-06 10:13 @467
por lobnomis
¿Qué tal?

Ejecuté lo que me indicaste de las perl -v

Sale esto:
Summary of my perl5 (revision 5 version 8 subversion 8)

La versión:
This is perl, v5.8.8 built for IA64.ARCHREV_0-thread-multi

El programa reemplaza un dígito en el archivo que se lo va encontrando en diferentes partes de la estructura del archivo.

Se tiene un archivo en formato binario que tiene una estructura media compleja, y este archivo al crearse se le debe de cambiar un dígito que especifica un valor el cual está incorrecto actualmente. Con el Perl se lo busca y se lo reemplaza por lo que debería ir.

El archivo 'binario' contiene el dato en binario que se desea poner en el archivo que se corrige.

Claro está que me lo pasaron para que lo verifique porque se cae y poder ver qué hacerle para poder darle funcionalidad, pero, además, no estoy familiarizado con Perl, por eso esto tratando de comprender cómo funcionan las rutinas y sentencias.

:shock:

Re: Abrir archivos binarios de tamaño de 50 megas con Perl

NotaPublicado: 2014-05-06 15:46 @699
por explorer
Te pedí '-V' (en mayúsculas) :)

Lo que me llama la atención son las agrupaciones

hex ord $byte;

Eso quiere decir que se extrae el valor numérico que está en $byte, con la ayuda de ord(), pero luego hex() lo interpreta como si estuviera escrito en hexadecimal, para pasarlo a decimal.

¿Seguro que eso está bien? Estás queriendo decir que los bytes que hay dentro del archivo están codificados en hexadecimal. Eso no es muy normal...

En cuanto al problema principal, pues ya te he dado varias soluciones. Cuestión de probarlas. Si te atascas con alguna de ellas, avísanos.