
Envoyé par
YASIR
Et je crois que ce n'est pas clair mais c'est quoi précisément un fichier binaire, même en cherchant sur google je n'ai pas bien capté.
En fait, un fichier binaire c'est un fichier qui n'est pas "fichier texte". Donc pour bien comprendre ce qu'est un fichier binaire, faut juste comprendre ce qu'est un fichier texte.
Un fichier texte est un fichier qui est compréhensible par un humain donc qui contient du texte. Ce texte est découpé en caractères et chaque caractère est codé en ascii.
Donc un fichier qui s'affiche (via blocnote) ainsi
1 2
| Bonjour le monde
Tout va bien |
Contient en fait la séquence suivante
'B', 'o', 'n', 'j', 'o', 'u', 'r', ' ', 'l', 'e', ' ', 'm', 'o', 'n', 'd', 'e', '\n', 'T', 'o', 'u', 't', ' ', 'v', 'a', ' ', 'b', 'i', 'e', 'n', '\n'
Chaque caractère 'x' étant codé sur un caractère (donc 8 bits en ascii)
Donc l'avantage c'est que tu peux ouvrir ce fichier avec le blocnote, rajouter des infos et le refermer. L'inconvénient c'est que tu perds de la place.
De l'autre coté t'as les fichiers binaires qui regroupent tout ce qui n'est exploitable que par des programmes. On trouve en vrac des films mpeg ou avi, des sons wav ou mp3, des images jpeg ou gif, des documents doc ou xls. Chaque fichier contient en vrac des octets qui, pris un à un ne représentent rien mais doivent être récupérés par le programme associé qui ira en prendre par exemple 5 puis 12 puis 3 mais pour lui, ces 20 octets s'intègrent dans la structure qui va bien pour reformer un son.

Envoyé par
YASIR
Ensuite stocker les "0" et les "1" sur le même fichier texte.
Et vous me proposez plutot de stocker les valeurs ASCII, c'est ca ?
Donc là tu te trouves dans une phase de choix. Tu as en effet la possibilité de
1)
- transformer ton binaire en texte (chaque bit 0/1 devient un caractère '0' ou '1' mais il se traduit alors par 00000000 ou 00000001 (soit 8 bits)
- écrire ensuite ce caractère '0' ou '1' dans le fichier
Et tu te retrouves avec un fichier qui, pour stocker l'octet 01100101 stockera '0', 1', '1', '0', '0', 0', 1', 0', '1'. Tu multiplies la taille par 8. Mais tu peux ouvrir ton fichier avec le blocnote et changer les 0 et les 1 si t'as besoin
En retour il te faut ensuite lire 8 caractères et retransformer ces 8 caractères en bit pour pouvoir réutiliser ton fichier dans ton programme
2)
- rester en binaire. Tu as un octet à stocker, tu le stockes tel quel. Le fichier résultat ne sera pas visible avec le bloc note mais ton programme pourra le relire facilement pour s'en resservir
Partager