Package fr.iutfbleau.sae.mpif
Class BitInputStream
- java.lang.Object
-
- fr.iutfbleau.sae.mpif.BitInputStream
-
public class BitInputStream extends java.lang.ObjectDécorateur de flux permettant la lecture binaire à granularité du bit.Cette classe encapsule un
InputStreamexistant et fournit des opérations de lecture bit par bit ou par groupes de bits. Elle ne gère ni l'ouverture ni la sélection du fichier source.Utilisée notamment pour le décodage des fichiers compressés (ex : format PIF utilisant des codes de Huffman).
- Since:
- 2025-12-13
-
-
Constructor Summary
Constructors Constructor Description BitInputStream(java.io.InputStream fluxEntree)Construit un lecteur binaire à partir d'un flux existant.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcloseFlux()Ferme le flux d'entrée sous-jacent.intreadBit()Lit un bit depuis le flux binaire.intreadBits(int nombreBits)Lit une séquence de bits consécutifs et les assemble dans un entier.
-
-
-
Method Detail
-
readBit
public int readBit() throws java.io.IOExceptionLit un bit depuis le flux binaire.- Returns:
- 0 ou 1 si un bit est lu, -1 si la fin du flux est atteinte
- Throws:
java.io.IOException- si une erreur de lecture survient
-
readBits
public int readBits(int nombreBits) throws java.io.IOExceptionLit une séquence de bits consécutifs et les assemble dans un entier.- Parameters:
nombreBits- nombre de bits à lire (strictement positif)- Returns:
- valeur entière correspondant aux bits lus, ou -1 si la fin du flux est atteinte prématurément
- Throws:
java.io.IOException- si une erreur de lecture survient
-
closeFlux
public void closeFlux() throws java.io.IOExceptionFerme le flux d'entrée sous-jacent.- Throws:
java.io.IOException- si une erreur survient lors de la fermeture
-
-