Bonjour ;-)
Dans un programme en langage "C" je lis un fichier texte qui comporte des
tabulations (code HEXA 09) jeveux les annuler et les remplacer par des espaces (code hexa 20)
Comment écrivez vous ça ?
Merci d'avance
Bonjour ;-)
Dans un programme en langage "C" je lis un fichier texte qui comporte des
tabulations (code HEXA 09) jeveux les annuler et les remplacer par des espaces (code hexa 20)
Comment écrivez vous ça ?
Merci d'avance
Ici, on n'écrit pas, on corrige: Poste ton code, on te dira ce qui ne va pas...
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Bonjour,
Même chose que Médinoc. Toutefois pour donner une petite piste de départ si tu débutes :
1) Ouvrir fichier (fopen)
2) Obtenir taille du fichier (fseek, ftell)
3) Allouer de la mémoire pour contenir le fichier (malloc)
4) Lire le fichier vers la mémoire allouée (fread)
5) boucler sur tous les caractères en mémoire : remplacer chaque 0x09 (TAB) par 0x20 (SPACE)
6) Sauver l'allocation mémoire vers un nouveau fichier pour éviter tout problème, ou sur l'ancien (fwrite)
7) Fermer les flux de fichiers (fclose), libérer la mémoire (free)
Ca n'est qu'une possibilité, on peut éviter d'allouer de la mémoire par exemple, en travaillant directement sur les flux (fgets / fgetc / ... ; fputs / ...)
Ici, on n'écrit pas, on corrige: Poste ton code, on te dira ce qui ne va pas...
Ok , je ne savais pas! merci quand même![]()
Partager