cs_radada
Messages postés488Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention21 avril 2009
-
19 sept. 2005 à 11:44
joe075
Messages postés3Date d'inscriptionmardi 26 février 2008StatutMembreDernière intervention 9 mars 2008
-
26 févr. 2008 à 14:22
Waza!
J'ai un gros soucis pour le taf, et c'est assez complexe, donc cela risque d'être long, mais si une âme charitable comprends tout, ce serait le top :D:D:D:D
Alors voila : j'ai 2 fichiers donc la structure est identique. Ce sont des fichiers type CSV (champs séparés par des ;). Pour simplifier, on va considérer que chaque ligne de donnée ne contient que 2 champs : un identifiant unique et un autre champ. Les données sont classés suivant l'identifiant unique dans les deux fichiers.
Il faut que je fasse un appareillage des fichiers en trouvant :
1°) les données contenues dans un fichier, mais pas dans l'autre
2°) les données contenues dans l'autre fichier, mais pas dans le premier
3°) les données que je retrouve dans les 2 fichiers, mais avec le 2ème champ différent d'un fichier à l'autre.
Le tout bien sur avec des sauts dans les numéros uniques d'un fichier à l'autre...
Et lorsqu'il y a un écart, il me faut bien entendu les données du fichier 1 et du 2!!!!
Comme un schéma vaut mieux qu'un long discours, voila un exemple avec chaque fichier et le résultat attendu
Fichier 1 Fichier 2 Erreur? Données en retour
1;A (vide) O 1;A;' ';' '
2;A 2.A N
3.B O ' ';' ';3;B
4.Z O ' ';' ';4;Z
5;A 5;E O 5;A;5;E
Vala. J'espère que ce n'est pas trop confus, et j'espère trouver un cador qui me débloquera rapidement lol :D:D:D:D
Merci d'avance.
cs_radada
Messages postés488Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention21 avril 20091 20 sept. 2005 à 12:21
Nan ben merci à tous, mais on vient de trouver la solution pour parcourir tous les fichiers correctement, sans trop faire de merdier et sans rien oublier...
Si j'ai 2 minutes une fois les devs terminés, je poste l'algo (l'algo hein, pas le code : )) ).
MErci bcp pour votre aide et réactivité en tout cas.
@+
cs_radada
Messages postés488Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention21 avril 20091 19 sept. 2005 à 12:49
T'es con ou quoi???? Va chez un toubib si tu ne te sens pas bien.....
Je n'ai pas demandé de me faire un prog, mais si quelqu'un aurait une
idée d'algorythme puisque ce genre d'algo est un "classique" en
développement et reviens dans pas mal de cas de figure...
Maintenant si tu n'avais aucune idée, il suffisait de le dire au lieu d'envoyer chier les gens comme ça...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 19 sept. 2005 à 12:54
ashboody > du calme, radada est sur CS depuis un moment déjà et a toujours été correct, il ne fait qu'exposer son problème.
radada > si les fichiers ne sont pas trop gros, charge tout dans 2 buffers et ballade 2 pointeurs dans chaque pour détailler par ligne, y a rien de sorcier là dedans. Si gros fichiers faudra boucler en lecture sur les buffers et repositionner les pointeurs de fichier.
ciao...
BruNews, MVP VC++
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_radada
Messages postés488Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention21 avril 20091 19 sept. 2005 à 13:02
lol salut Brunews :):):)
Content de te voir, ça faisait un bon moment que je n'étais pas passé
par ici... Surtout depuis que je n'ai plus de net au taf lol :D:D:D
Sinon, les fichiers font dans les 80-100 Mo en gros...
Ce qui m'emmerde, c'est comment parcourir les fichiers rapidement, sans
rien oublier, et sans faire une boucle avec 500 milliards de tests. Je
ne vois pas comment faire un algo propre avec un minimum de tests et
qui me gère tous les cas de figure....
en mixant tout cela tu devrais y arriver, fais des test sur de petits fichiers pour mettre au point ton algo.
Désolé mais pas le temps de te le faire complet.
cs_radada
Messages postés488Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention21 avril 20091 20 sept. 2005 à 08:51
Yo!
Finalement, je ne peux pas faire grand chose avec les sources ci dessus : d'abord parce, j'ai oublié de la préciser, je suis sous UNIX!!! Donc pas de windows.h à ma connaissance....
Et en fait, c'est plutôt la façon d'appareiller les fichiers qui me manque....
En fait, je ne sais pas si je casse le dos à essayer de parcourir simultanément les 2 fichiers en recherchant les différences, ou alors si je fais une passe sur un fichier, je monte les différences en mémoire, et je recommence sur le deuxième.... Finalement, je ne sais pas si ce sera moins rapide que de parcourir les 2 fichiers en même temps en faisant un algo de folie non????
Merci d'avance.
BunoCS
Messages postés15472Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention25 mars 2024103 20 sept. 2005 à 11:56
C'est peut-être bête ce que je vais dire (désolé, je ne maîtrise pas unix...) mais t'as pas moyen de faire un diff et de rediriger le résultat dans un fichier?
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
joe075
Messages postés3Date d'inscriptionmardi 26 février 2008StatutMembreDernière intervention 9 mars 2008 26 févr. 2008 à 14:22
Hello,
Je m'entraîne sur le même type de sujet, 2 fichiers à rapprocher en un fichier final selon un certain critère... Une idée de l'algo? Merci beaucoup... Joe