Les fichiers en mode binaire

Fermé
Lap-top Messages postés 56 Date d'inscription vendredi 9 décembre 2011 Statut Membre Dernière intervention 5 octobre 2016 - 4 mars 2014 à 12:42
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 6 mars 2014 à 22:28
Bonjour à tous, j'ai un peu de mal a comprendre l'intérêt de la lecture et l'ecriture dans un fichier en mode non formatté (binaire). Quel est l'avantage de "fread et fwrite" par rapport à "fprintf et et fscanf" du moment où "fwrite et fread", eux ne respectent pas les formats des variables.

Merci...
A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
4 mars 2014 à 23:35
Bonjour,

Le mode texte est à utiliser lorsque tu souhaites décoder/encoder un fichier rempli de caractères. Le mode binaire est à utiliser plutôt lorsque que le fichier représente une succession de bits. Par exemple, un fichier .txt s'ouvrira généralement en mode texte, tandis qu'une image, un programme, un word s'ouvriront en mode binaire.

Sur Unix, cela n'aura aucune différence puisque les fichiers sont binaires. En revanche sur certains OS comme windows, il y a une différence. Par exemple pour les caractères de fin de lignes.

Cdlt,
0
Lap-top Messages postés 56 Date d'inscription vendredi 9 décembre 2011 Statut Membre Dernière intervention 5 octobre 2016 9
6 mars 2014 à 02:26
Ok mais est-ce qu'on peut directement accéder (lire et comprendre) à un fichier (au format .txt par exemlpe) créé, édité et enregistré via la fonction fwrite d'un un sous programme C ou il faut nécessairement appeler fread ailleurs dans le programme pour pouvoir afficher le contenu vu que le fichier ne stocke que des bits.
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
6 mars 2014 à 22:28
Ce n'est pas la fonction d'écriture (fwrite(), fputs(), ...) qui fait que le fichier sera lisible.
Un fichier est toujours une succession de bits. Lorsque tu ouvres avec un éditeur de texte, ce dernier décode le fichier. C'est-à-dire qu'il regrouper les bits et afficher la lettre correspondant au code ascii.

Donc, tout dépend ce que tu mets dans ta fonction.
0