Transformer une colonne en une ligne
Résolu
DLM26
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
DLM26 Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
DLM26 Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je cherche une procedure pour transformer un fichier txt d'une colonne composee de n lignes (chaque ligne ayant x caracteres),
en une ligne de n ensembles de x carateres, chacun etant separe par une virgule
exemple:
AAQM002
AAQP007
AAQP009
ACQH002
ACQH003
ACQH004
en*:
AAQM002,AAQP007,AAQP009,ACQH002,ACQH003,ACQH004
complication supplémentaire: la valeur de n est "grande" (au moins 50 000), et la solution doit etre compatible avec cet ordre de grandeur
*je dois soumettre cette ligne a un requeteur non modulable d'un logiciel
merci pour votre aide
DLM26
je cherche une procedure pour transformer un fichier txt d'une colonne composee de n lignes (chaque ligne ayant x caracteres),
en une ligne de n ensembles de x carateres, chacun etant separe par une virgule
exemple:
AAQM002
AAQP007
AAQP009
ACQH002
ACQH003
ACQH004
en*:
AAQM002,AAQP007,AAQP009,ACQH002,ACQH003,ACQH004
complication supplémentaire: la valeur de n est "grande" (au moins 50 000), et la solution doit etre compatible avec cet ordre de grandeur
*je dois soumettre cette ligne a un requeteur non modulable d'un logiciel
merci pour votre aide
DLM26
A voir également:
- Transformer une colonne en une ligne
- Déplacer une colonne excel - Guide
- Partager photos en ligne - Guide
- Trier une colonne excel - Guide
- Mètre en ligne - Guide
- Transformer une image en icone - Guide
3 réponses
si tu utilise un tableau, tu prend la bibliotheque string.h, tu utilise strlen pour voir la longueur de ta chaine et tu remplace le dernier caractere , soit '\0' par ',' avec strncpy ^^.
Le plus simple, tu la convertis en AnsiString, mais bon....
Le plus simple, tu la convertis en AnsiString, mais bon....
Salut,
tu peux installer devC++ pour compiler le code (voir en gras)
mon test est fait sous linux sur un fichier de 5 198 918 lignes (50 000 c'est rien ;-))
à la fin tu verras le temps d'exécution
tu peux installer devC++ pour compiler le code (voir en gras)
mon test est fait sous linux sur un fichier de 5 198 918 lignes (50 000 c'est rien ;-))
à la fin tu verras le temps d'exécution
lami20j@debserv:~/trash$ wc -l ccm.txt 5198918 ccm.txt lami20j@debserv:~/trash$ cat ccm.c #include <stdio.h> int main () { FILE *fic, *res; int c; if ((fic = fopen ("ccm.txt", "r")) == NULL) return -1; if ((res = fopen ("resultat.txt", "w")) == NULL) return -1; while ((c = getc (fic)) != EOF){ if (c == '\n') c = ','; fprintf (res, "%c", c); } fclose (fic); fclose (res); return 0; } lami20j@debserv:~/trash$ gcc ccm.c lami20j@debserv:~/trash$ time ./a.out real 0m3.321s user 0m2.828s sys 0m0.476s