2012-07-03 14 views

Respuesta

50

El archivo es en realidad un archivo PNG con la extensión de archivo incorrecta. "0x89 0x50" es como se inicia un archivo PNG.

52

Su archivo no es un archivo JPEG, simplemente ha sido renombrado desde PNG a JPEG en algún punto del camino. Algunos programas abrirán esto como una extensión de archivo reconocida e inferirán el tipo del prefijo, pero obviamente no el que estás usando.

+0

Si desea encontrar esos archivos, puede usar este enlace de StackOverflow: https://stackoverflow.com/questions/30684796/rename-a-bunch-of-png-images- with-jpg-extension-to-png – zigzag

2

Esta es la respuesta de error cuando intenta abrir un archivo PNG utilizando un visor de archivos JPEG que usa libjpeg para abrir archivos jpeg. Su archivo se renombra de png a JPEG como se menciona en las respuestas anteriores.

0

Aquí hay una secuencia de comandos python para identificar esas imágenes jpg de falla en un directorio.

import glob 
import os 
import re 
import logging 
import traceback 

filelist=glob.glob("/path/to/*.jpg") 
for file_obj in filelist: 
    try: 

     jpg_str=os.popen("file \""+str(file_obj)+"\"").read() 
     if (re.search('PNG image data', jpg_str, re.IGNORECASE)) or (re.search('Png patch', jpg_str, re.IGNORECASE)): 
      print("Deleting jpg as it contains png encoding - "+str(file_obj)) 
      os.system("rm \""+str(file_obj)+"\"") 
    except Exception as e: 
    logging.error(traceback.format_exc()) 
print("Cleaning jps done") 
0

simplemente cambie el nombre * .jpg a * .png. O abra este archivo en el navegador

Cuestiones relacionadas