robotniktareum au moins... | qdm a écrit :
J'ai un fichier texte qui se présente sur une seule très longue ligne. J'aimerais qu'à chaque fois qu'il y a un [ , soit inséré un retour chariot. Quelle commande est capable de faire ça ?
Merci d'avance
|
fé-le en C...
Code :
- #include <stdio.h>
- #include <stdlib.h>
- int main(int argc, char ** argv)
- {
- FILE * f1, f2;
- char* srcfile=argv[1];
- char* destfile=argv[2];
- char tmp;
- char insert='\n';
- if((f1=open(filename, O_RDONLY))==0)
- {
- perror ("open" );
- exit(-1);
- }
- if((f1=open(filename, O_WRONLY|O_CREAT|O_EXCL))==0)
- {
- perror ("open" );
- exit(-1);
- }
- while((tmp=read(f,&tmp,sizeof(char))!=0)
- {
- write(f2,&tmp,sizeof(char));
- if(tmp=='[')
- write(f2,&insert,sizeof(char));
- }
- close(f1);
- close(f2);
- }
|
G tapé ce code à l'arrache, je ne suis pas certain qu'il fonctionne bien. Entr'autres, j'ai oublié de faire des tests sur les read et les write et il manque peut-être des includes. Tu compiles ton programme et tu mets en paramètre le nom du fichier à modifier puis le nom du fichier à écrire avec les modifications.
Tu peux le compiler avec la commande :
gcc -o retourchariot retourchariot.c |
J'espère t'avoir aidé ---------------
si t déçu d'être dessous, tu iras dessus kom ça tu seras plus déçu ni dessous... Si tu piges pas c ke t saoul, c sûr...
|