finir le sprint 3
This commit is contained in:
@@ -109,6 +109,30 @@ public class BitOutputStream {
|
||||
this.fluxSortie.flush(); // Force l'écriture dans le flux sous-jacent dans le but de vider le buffer
|
||||
}
|
||||
|
||||
/**
|
||||
* Écrit une séquence de bits à partir d'une chaîne de '0' et '1'.
|
||||
*
|
||||
* @param codeBinaire chaîne contenant uniquement '0' et '1'
|
||||
* @throws IOException si une erreur d'écriture survient
|
||||
* @throws IllegalArgumentException si la chaîne contient autre chose que '0' ou '1'
|
||||
*/
|
||||
public void writeBitString(String codeBinaire) throws IOException {
|
||||
if (codeBinaire == null) {
|
||||
throw new IllegalArgumentException("Le code binaire ne peut pas être null");
|
||||
}
|
||||
|
||||
for (int i = 0; i < codeBinaire.length(); i++) {
|
||||
char c = codeBinaire.charAt(i);
|
||||
if (c == '0') {
|
||||
writeBit(0);
|
||||
} else if (c == '1') {
|
||||
writeBit(1);
|
||||
} else {
|
||||
throw new IllegalArgumentException("Le code binaire ne doit contenir que '0' et '1'");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Vide les buffers internes et ferme le flux de sortie.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user