Obligatorio 2 - leerImagen

Obligatorio 2 - leerImagen

de Agustin Noel Coitinho Ramirez -
Número de respuestas: 2

Hola,

Tengo ciertas dudas acerca de qué tan riguroso debo ser al controlar el tipo de archivo que intento abrir, pensando ya en qué errores debo devolver según el caso. Por ejemplo, ¿debería chequear que el archivo que estoy intentando abrir tenga extensión .ppm o .pgm? A su vez también, cuando voy leyendo datos del encabezado del archivo, ¿debo controlar que respete las características de su formato? Es decir, chequear que el número mágico sea uno de los cuatro posibles, la cantidad de espacios en blanco(notar que según la posición en el encabezado pueden ser uno o más los aceptados para el formato), que un píxel sea de 1 o 3 bytes según el caso, etc, ¿o puedo suponer que si el archivo es .ppm o .pgm ya cumple con dichos requisitos?
Desde ya muchas gracias por su tiempo.

Saludos.

En respuesta a Agustin Noel Coitinho Ramirez

Re: Obligatorio 2 - leerImagen

de Gregory Randall -
Hola,
debes chequear que el número mágico sea el correcto. No es necesario chequear número de espacios en blanco, tamaño del píxel, etc.
saludos
gregory
En respuesta a Gregory Randall

Re: Obligatorio 2 - leerImagen

de Leopoldo Agorio -
Para complementar: en general vas a ignorar el título del archivo. Linux en general tiene esa política, windows no tanto. Fíjate que si agarras bargo.pgm de la carpeta de prueba por ejemplo y lo renombras a barco, el visor de imágenes sigue funcionando. Las 'extensiones' en principio son para que el usuario sepa que esperar y nada más.

Lo que vas a tener que *resolver* para leer el archivo es eso que decís del formato. Si el formato admite varios espacios en blancos, tu código debería ser capaz de rescatar la información así haya uno o varios espacios en blanco. Si no se cumple el número mágico o en general se viola cualquier especificación del formato que no puedas resolver y por lo tanto el archivo es corrupto e ilegible deberás reflejarlo con un CodigoError.