Disons que j'ai un fichier gz faux test.bson.gz
généré par echo "hello world" > test.bson.gz
, et je l'ai essayé:faux `.gz` augmenter IOError, « Pas un fichier gzip »
try:
bson_file = gzip.open('test.bson.gz', mode='rb')
except:
print("cannot open")
Aucune exception ne sera pris ici. (Vraiment étrange, puisque ce n'est pas valide ... gz)
Alors je:
data = bson_file.read(4)
je vais obtenir:
File "/usr/lib/python2.7/gzip.py", line 190, in _read_gzip_header
raise IOError, 'Not a gzipped file'
IOError: Not a gzipped file
Est-il possible que je puisse déterminer (même erreur de capture) si ce .gz est valide quand j'essaie de l'ouvrir, pas attendre jusqu'à ce que je veux le lire?
Merci!
Attendez ... Il semble que ce code ne fonctionne pas pour BSON valide. Essayez 'bson_file.peek (1)' pour un '.bson.gz' valide, et vous verrez qu'il peut toujours attraper l'erreur. – tclo2