Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1299 connectés 

  FORUM HardWare.fr
  Windows & Software
  Win NT/2K/XP

  Convertir un fichier texte en csv avec une commande dos ??

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Convertir un fichier texte en csv avec une commande dos ??

n°941905
pavat69
Posté le 12-11-2002 à 16:36:28  profilanswer
 

Bonjour,  
 
Je souhaite convertir un fichier texte ( separation par espace ) en fichier CSV ( séparation par des point virgules )
Le tout en commande DOS.
 
Merci  
 
 
URGENT

mood
Publicité
Posté le 12-11-2002 à 16:36:28  profilanswer
 

n°941906
thalis
Posté le 12-11-2002 à 16:37:27  profilanswer
 

avec edit ...

n°941908
Alana
Amiga for ever.
Posté le 12-11-2002 à 16:38:02  profilanswer
 

sed sous linux. mais en cherchant un peu ca doit etre possible d'avoir une version de sed compile sous windows. (enfin je pense)

n°941924
pavat69
Posté le 12-11-2002 à 16:46:36  profilanswer
 

Ok merci je vais essayer.
PS : Avec edit c'est quoi la syntaxe ??
Je voudrais pouvoir le faire en mode dos complet, car je dois automatiser ca pour l'exporter via de l'as 400.
 
merci  

n°941925
xilebo
noone
Posté le 12-11-2002 à 16:47:06  profilanswer
 

si tu sais programmer en C , ca te prend 1 minute a programmer (sans rire)
 
tiens la preuve je t ecris le source
 
utilisation prog fic_entree fic_sortie
 

Code :
  1. #include <stdio.h>
  2. int main(int argc, char* argv[])
  3. {
  4. FILE *in;
  5. FILE *out;
  6. int l;
  7. int i;
  8. if (argc != 3) {
  9. printf("Syntax : prog [input file] [output file]\n" );
  10. return 1;
  11. }
  12. in = fopen(argv[1],"rb" );
  13. out = fopen(argv[2],"wb" );
  14. fseek(in,0,SEEK_END);
  15. l = ftell(in);
  16. fseek(in,0,SEEK_SET);
  17. for (i=0; i <l;i++) {
  18. unsigned char c;
  19. fread(&c,1,1,in);
  20. if (c == 0x20) {
  21. c = ';';
  22. }
  23. fwrite(&c,1,1,out);
  24. }
  25. fclose(in);
  26. fclose(out);
  27. }


 
39 s  (fiou ...)
 
edit : 52 s :lol:


Message édité par xilebo le 12-11-2002 à 17:17:06
n°941937
pavat69
Posté le 12-11-2002 à 16:53:04  profilanswer
 

Je ne sais pas programmer en c    snif..
Ton prog comment y marche si je le programme ??

n°941944
xilebo
noone
Posté le 12-11-2002 à 16:55:38  profilanswer
 

tu prends un compilateur C et tu le compiles tel quel ca marche
j'ai juste oublié un truc, je le rajoute maintenant ... par contre y a pas la gestion d erreur alors te trompe pas dans son utilisation (si tu l appelle sans donner un nom de fichier d entree et un nom de fichier de sortie ca plante)
 
 
edit : et te trompe pas dans l ordre d appel du fichier entree et sortie : c est PROG ENTREE SORTIE si tu fais le contraire ca efface ton fichier ENTREE


Message édité par xilebo le 12-11-2002 à 16:57:38
n°941954
pavat69
Posté le 12-11-2002 à 16:59:43  profilanswer
 

Ok merci amigos.
 
Je suis en train de récupere un compiler ( devccp4 )
Je pense que cela fera l'affaire .
 
merci

n°942001
pavat69
Posté le 12-11-2002 à 17:15:46  profilanswer
 

OK c'est cool le prog mais comment je l'exploite ??
 
PS: Je ne connais pas le C
 
J'ai lancer le prog, puis inserer la syntaxe, puis j'ai compiler
mais comment j'exporte ca sous forme de fichier executable ?

n°942008
xilebo
noone
Posté le 12-11-2002 à 17:18:35  profilanswer
 

j ai fait un nouvo code reprend celui la il compile c sur g essayé.
 
Bah tu crees un projet , tu inseres un fichier .cpp dans lequel tu copies le code que je t ai donné ... et dans ton menu tu dois avoirune option build ... tu utilises cette option et ca te crees l executable c est tout.

mood
Publicité
Posté le 12-11-2002 à 17:18:35  profilanswer
 

n°942015
xilebo
noone
Posté le 12-11-2002 à 17:20:42  profilanswer
 

Au pire si t y arrive pas donne moi ton mail je te file une version compilée (j ai compilée sous windows par contre mais ca marche en console...)

n°942023
pavat69
Posté le 12-11-2002 à 17:24:24  profilanswer
 

En faite je t'explique ce que je dois faire :
 
on va recevoir un fichier du boite tout les mois qui lui est en format texte.
moi tous les mois je dois le convertir en .csv ( car le separateur est en pint virgule ) puis je dois le reinjecter dans l'as 400 afin de continuer le projet.
 

n°942034
xilebo
noone
Posté le 12-11-2002 à 17:26:50  profilanswer
 

ok je t ai envoyé le prog sur ton adresse pavat@netcourrier.com  
 
utilise le comme ca :
prog fic.txt fic.csv

n°942037
pavat69
Posté le 12-11-2002 à 17:28:16  profilanswer
 

ok merci je test

n°942045
xilebo
noone
Posté le 12-11-2002 à 17:30:24  profilanswer
 

Au fait c pas optimisé du tout , donc ca prendra un certain temps si tes fichiers sont gros (de l'ordre de 10 MO )
 
Il aurait fallu lire des segments dans le fichier plutot que de lire caractere par caractere mais bon ... ct pour te filer quelque chose. Si c est des gros fichiers (genre 100 MO) dit le moi je te ferai une petite modif pour que ce soit plus rapide.

n°942052
pavat69
Posté le 12-11-2002 à 17:34:20  profilanswer
 

Ok merci c'est super cool !!
Ca marche
 
Les fichiers je ne sais pas si ils vont etre gros mais pour l'instant cela me va parfaitement..
 
Merci BCP

n°942060
xilebo
noone
Posté le 12-11-2002 à 17:36:52  profilanswer
 

de rien ;) je te conseille d apprendre le C car ca permet de depanner pour ce genre de chose (sous linux on peut faire sans en utilisant des commandes shells) et ca va assez vite a apprendre (en tout cas la base )

n°942078
pavat69
Posté le 12-11-2002 à 17:44:26  profilanswer
 

Je pense que je vais m'y mettre.
 
Ps : Dans ton prog les espaces sont remplacé par des virgules.
Esce que c'est possible de remplacé tout les espaces par une seul virgules ??
 
Merci

n°942085
xilebo
noone
Posté le 12-11-2002 à 17:49:30  profilanswer
 

vi c possible mais la faut modifier le code, c est un peu plus compliqué ...

n°942092
pavat69
Posté le 12-11-2002 à 17:52:17  profilanswer
 

Tu peux me le faire ??   :love:  
 
Y a t'il une autre solution sinon car je n'ai pas envie de t'embeter
 

n°942098
Tilys
Heartbreaker
Posté le 12-11-2002 à 17:56:10  profilanswer
 

avec la commande for cela doit être possible
 

for /F "tokens=1,2,3 ..." %%a IN (.\fichier) do call :toto %%a %%b %%c %%d ...
goto :end
 
:toto
set data1=%1
set data2=%2
...
 
@echo %data1%;%data2%
goto :EOF
 
:end


 
ce n'est qu'un exemple il faut l'adapter et ça s'utilise en batch c mieux  :)


Message édité par Tilys le 12-11-2002 à 17:57:05

---------------
Donne invitations pour gmail - Je n'aime pas les cons et je n'ai pas envie de leur parler.
n°942100
pavat69
Posté le 12-11-2002 à 17:59:53  profilanswer
 

C'est pas mal n'on plus mais bon c'est pas evident car la prog c'est pas trop mon truc et j'avou vue mon boulot je n'ai pas bcp de temps pour m'y mettre à fond.    :(  
 
Mais c'est sympas de m'aider !!

n°942122
Tilys
Heartbreaker
Posté le 12-11-2002 à 18:14:05  profilanswer
 

pavat69 a écrit a écrit :

C'est pas mal n'on plus mais bon c'est pas evident car la prog c'est pas trop mon truc et j'avou vue mon boulot je n'ai pas bcp de temps pour m'y mettre à fond.    :(  
 
Mais c'est sympas de m'aider !!




 
sinon tu peux passer par excel tu importe le fichier en précisant que les séparateur sont des espaces et tu le réenregistre en csv


---------------
Donne invitations pour gmail - Je n'aime pas les cons et je n'ai pas envie de leur parler.
n°942490
pavat69
Posté le 12-11-2002 à 21:55:07  profilanswer
 

Oui je sais ca, mais je veux le faire sous dos car il faut absolument que cela ce fasse en automatique pour etre injecter dans l'as 400. ( voir explication plus haut )
 

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Windows & Software
  Win NT/2K/XP

  Convertir un fichier texte en csv avec une commande dos ??

 

Sujets relatifs
comment deporter user.dat sous win9x ? fichier de profilsProbleme avec Cdrwin et le fichier CUE
Fichier .msicomment faire pour changer l'extension d'un fichier!
comment lire un fichier bin ?Ya moyen d'empêcher l'accès à un fichier ?
Simple transfert de fichier d'1 Pc a l'autre ??fichier .blist ?
Prblm sur fichier AVI : parfois pas d'imagecherche bon gestionnaire de fichier pour XP................
Plus de sujets relatifs à : Convertir un fichier texte en csv avec une commande dos ??


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR