Ouvrir et ecrire dans un fichier

bourbon -  
 bourbon -
Bon, voila mon probléme:
je désire ouvrir un fichier texte, jusque là, tout va bien avec *fopen, mais ce que je veux, c'est par exemple déplacer tous les caractére (ascii) de 2 vers la gauche (ou vers la droite)... du genre

main()
j=strenl(r)
for (i=0;i<j;i++)
c[j-2-i]= r[i]
c[j=0];

etc....

voici ma fonction à réalisée, bon, daccord, elle est pas terrible, mais c'est juste par principe...
ce que je veux, c'est pouvoir effectuer cette fonction à mon texte et enregistrer ce texte dans un nouveau fichier!!
J'ai bien trouvé des explications sur differente technique, mais aucune marche, alors si quelqu'un a une idée, qu'il m'en fasse profiter...
Merci d'avance.

3 réponses

Bobinours Messages postés 2903 Statut Membre 504
 
Et le langage ?

-= Bobinours =-
0
bourbon
 
Oups!!
En langage C voir C++, mais le C est préférable pour ma part.
0
toto > bourbon
 
cest ok, mais explik deja en détail ce ke fais

main()
j=strenl(r)
for (i=0;i<j;i++)
c[j-2-i]= r[i]
c[j=0];
0
bourbon > toto
 
ça déplace les caractéres de 2 vers la gauche, soit
D devient B suivant le tableau ASCII
0
nono le petit malin > bourbon
 
Ca doit etre un truc du genre...
envoie l'erreur kil dit sil y en a une...

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *fp;

if ((fp = fopen("sortie.txt", "w")) ==NULL)
{
printf("Error opening file\n");
exit(1);
}
fputs ("tu tapes ici la variable contenant le resultat",fp);
}
0
bourbon
 
OK mais ce que je veux, c'est efféctué mon algo qui est plus haut puis réenregistrer, je connais déjà la structure:
for(toto=getc(fichierentrée);
EOF!=toto;
toto=getc(fichierentrée))
putc(mon_algo(appliqué à toto), fichiersortie);
0
bourbon
 
bonne nuit à tous, je sais que vous êtes entrain de songer à mon programme, comme c'est gentil ... :)))
bon moi, jvous laisse, a bientôt tout le monde.
;)
bourbon
0
tafiscobar Messages postés 1281 Statut Contributeur 177
 
moi je n comprends pas poourqoi tu n'y arrives pas.En effet,a chaq fois q tu lis un nombre d'octets, ces octets st stockes ds la varaible et tu p manipuler cette variable et en faire ce q tu v.Je pense plutot q c'est ton algo qui deconne, mais bon, attends q je verifie un truc.Bon, voila, j'ai verifie ton algo avec bonjour comme chaine, et elle me retourne uojonb, je ne sais pas ce q tu atetndais mais normalement c'est ce genre de truc q ton algo devrait retourner, de plus, ta boucle provoquerq une erreur d'execution cat lorsq i=j-1, t'auras v[j-2-j+1] ie v[-1], jamais vu en c, donc tu devrais t'arreteter avec ta boucle a j-1.En tout cas ce q tu recuperes ds une varaible, tu p lel modifier et le mettre ds un fichier, c'est le principe de ces fct.Je vais pas plus lon car je pense q tu sais manipuler les fichiers.

tafiscobar
0
bourbon
 
Merci Tafiscobar!!!
Enfin une réponse sérieuse bien que les autres le soient également.
Comme t'as pu le lire dans l'autre message, je ne retourne pas simplement un tableau de char mais une suite de char cryptée que je stocke néanmoins dans un tableau, si je me souvient bien...
Par contre tu as tort lorsque tu dis que je sais manipuler les fichiers, je manipule un peu, mais je ne sais pas...
Alors si tu as une solution pour mon problème...
je suis preneur.
Merci
@+
0