Comment lire les fichiers binaires dans Python

Comment lire les fichiers binaires dans Python

Le fichier qui contient les données binaires s'appelle un fichier binaire. Toutes les données binaires formatées ou non formatées sont stockées dans un fichier binaire, et ce fichier n'est pas lisible par l'homme et est utilisé par l'ordinateur directement. Lorsqu'un fichier binaire est nécessaire pour lire ou transférer d'un emplacement à un autre emplacement, le contenu du fichier est converti ou codé dans un format lisible par l'homme. L'extension du fichier binaire est .poubelle. Le contenu du fichier binaire peut être lu en utilisant une fonction ou un module intégré. Différentes façons de lire les fichiers binaires à Python ont été montrés dans ce tutoriel.

Prérequis:

Avant de vérifier les exemples de ce tutoriel, il est préférable de créer un ou plusieurs fichiers binaires à utiliser dans l'exemple de script. Le script de deux fichiers Python a donné ci-dessous pour créer deux fichiers binaires. Le binaire1.PY créera un fichier binaire nommé chaîne.poubelle qui contiendra des données de chaîne, et le binaire2.PY créera un fichier binaire nommé numéro_liste.poubelle qui contiendra une liste de données numériques.

Binaire1.py

# Ouvrez un gestionnaire de fichiers pour créer un fichier binaire
file_handler = open ("chaîne.bin "," wb ")
# Ajouter deux lignes de texte dans le fichier binaire
file_handler.Écrire (B "Bienvenue à Linuxhint.\ Nlearn Python Programmation.")
# Fermez le gestionnaire de fichiers
file_handler.fermer()

Binaire2.py

# Ouvrez un gestionnaire de fichiers pour créer un fichier binaire
file = open ("numéro_list.bin "," wb ")
# Déclarer une liste de valeurs numériques
Nombres = [10,30,45,60,70,85,99]
# Convertir la liste en tableau
barray = bytearray (nombres)
# Écrivez un tableau dans le fichier
déposer.Écrire (Barray)
déposer.fermer()

Exemple-1: Lisez le fichier binaire des données de chaîne dans le tableau d'octets

De nombreuses façons existent à Python pour lire le fichier binaire. Vous pouvez lire le nombre particulier d'octets ou le contenu complet du fichier binaire à la fois. Créez un fichier Python avec le script suivant. Le Fonction Open () a utilisé pour ouvrir le chaîne.poubelle à lire. Le Fonction Read () a été utilisé pour lire 7 caractères du fichier dans chaque itération de la boucle et de l'impression. Ensuite, le Fonction Read () a été utilisé sans aucun argument pour lire le contenu complet du fichier binaire qui sera imprimé plus tard.

# Ouvrez le fichier binaire pour la lecture
file_handler = open ("chaîne.bin "," rb ")
# Lisez les trois premiers octets du fichier binaire
data_byte = file_handler.lire (7)
Imprimer ("Imprimer trois caractères dans chaque itération:")
# Itérez la boucle pour lire la partie restante du fichier
tandis que data_byte:
Imprimer (data_byte)
data_byte = file_handler.lire (7)
# Lisez l'intégralité du fichier en une seule chaîne d'octet
avec ouvert ('chaîne.bin ',' rb ') comme fh:
Contenu = FH.lire()
Imprimer ("Imprimez le contenu complet du fichier binaire:")
Imprimer (contenu)

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus.

Exemple-2: Lisez le fichier binaire des données de chaîne dans le tableau

Créez un fichier Python avec le script suivant pour lire un fichier binaire nommé numéro_liste.poubelle créé précédemment. Ce fichier binaire contient une liste de données numériques. Comme l'exemple précédent, le Fonction Open () a utilisé ouvrir le fichier binaire pour la lecture dans le script. Ensuite, les 5 premiers numéros seront lus à partir du fichier binaire et convertis en liste avant d'imprimer.

# Ouvrez le fichier binaire pour la lecture
file = open ("numéro_list.bin "," rb ")
# Lisez les cinq premiers numéros dans une liste
numéro = liste (fichier.lire (5))
# Imprimez la liste
Imprimer (numéro)
# Fermez le fichier
déposer.fermer()

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. Le fichier binaire contient 7 numéros et les cinq premiers numéros ont été imprimés dans la sortie.

Exemple-3: Lisez le fichier binaire en utilisant Numpy

Les moyens de créer le fichier binaire à l'aide du Tableau nu et lire le contenu du fichier binaire en utilisant une liste en utilisant le Module Numpy ont montré dans cette partie du tutoriel. Avant de vérifier le script ci-dessous, vous devez installer le Module Numpy en exécutant la commande à partir du terminal ou en installant le Package Numpy dans l'éditeur Python, où le script sera exécuté. Le fonction tofile () est utilisé pour créer un fichier texte ou binaire, et le FromFile () Fonction est utilisé pour créer un tableau en lisant un texte ou un fichier binaire.

Syntaxe de Tofile ():

ndarray.tofile (fichier, sep = ", format = '% s')

Le premier argument est obligatoire et prend le nom de fichier ou la chaîne ou le chemin comme une valeur. Le fichier sera créé si un nom de fichier est fourni dans cet argument. Le deuxième argument est facultatif qui est utilisé pour séparer les éléments du tableau. Le troisième argument est également facultatif et utilisé pour formater la sortie du fichier texte.

Syntaxe de fomfile ():

nombant.FromFile (fichier, dType = float, count = - 1, sep = ", offset = 0, *, like = aucun)

Le premier argument est obligatoire et prend le nom de fichier ou la chaîne ou le chemin comme une valeur. Le contenu du fichier sera lu si un nom de fichier sera fourni dans cet argument. Le dtype définit le type de données du tableau renvoyé. Le nombre est utilisé pour compter le nombre d'éléments. Le but du sep est de séparer le texte ou les éléments du tableau. Le décalage est utilisé pour définir la position actuelle du fichier. Le dernier argument est utilisé pour créer un objet de tableau qui n'est pas un Tableau nu.

Créez un fichier Python avec le script suivant pour créer un fichier binaire en utilisant Tableau nu et lire et imprimer le contenu du fichier binaire.

# Importer le module Numpy
Importer Numpy comme NP
# Déclarer le tableau Numpy
nparray = np.Array ([34, 89, 30, 45, 90, 11])
# Créer un fichier binaire à partir du tableau Numpy
nparray.tofile ("liste.poubelle")
# Imprimer les données du fichier binaire
Imprimer (NP.FromFile ("Liste.bin ", dtype = np.int64))

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus.

Conclusion:

Trois façons différentes de lire le fichier binaire ont été montrées dans ce tutoriel en utilisant des exemples simples. Le premier exemple a renvoyé le contenu du fichier binaire en tant que tableau d'octets. Le deuxième exemple a renvoyé le contenu du fichier binaire en tant que liste. Le dernier exemple a également renvoyé le contenu du fichier binaire en tant que liste.