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

  FORUM HardWare.fr
  Programmation
  Perl

  Est-ce possible en perl ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Est-ce possible en perl ?

n°2001631
donny3
Posté le 15-06-2010 à 08:04:44  profilanswer
 

Bonjour,
 
J'ai deux fichiers et je souhaiterai les comparé car beaucoup de ligne (10 000)
Ces deux fichiers on des entêtes et les données sont séparé par des ;
Les trucs c'est que je peux avoir cela
 
fichier 1
colA;colB;colD;
 
fichier 2
colA;colB;colC;colD
 
les entête peuvent etre differente, c'est à dire un fichier peut contenir des colonnes differentes
est-ce possible en perl de faire un truc qui pour le deuxieme fichier,supprime la colonne C ?
 
 
Ensuite pour comparé les fichier, je pensai à faire deux boucle,
la premiere "split" le fichier 1 en fonction des ;
et la deuxieme le fichier 2
et je compare ensuite champs par champs (colA avec ColA puis colB avec colB... et ensuite je passe à la ligne 2..n)
et s'il y a des différence ,je met la ligne dans un fichier, ainsi que les champs qui diffère.
 
qu 'en pensez vous ?
 
Merci
 
 
 
 

mood
Publicité
Posté le 15-06-2010 à 08:04:44  profilanswer
 

n°2001638
gilou
Modérateur
Modzilla
Posté le 15-06-2010 à 08:55:56  profilanswer
 

C'est tout a fait faisable.
Selon le degré de contrôle que vous désirez, vous pouvez tout faire a la main, ou bien utiliser des modules.
Jetez un œil ici pour voir comment transformer une ligne d'un CSV en un array: http://forum.hardware.fr/hfr/Progr [...] 9579_1.htm et en particulier le code que je poste a mon avant dernière intervention.
Une fois que vous avez un array pour chaque ligne, vous pouvez utiliser Array::Compare (module à qui on peut dire quelles colonnes sauter dans la comparaison) pour les comparer, ou utiliser la technique de ce module et le faire à la main (concaténation en une chaine des champs non sautés d'un array, avec des^G entre chaque champ, puis comparaison ordinaire des deux chaines obtenues).
A+,


Message édité par gilou le 15-06-2010 à 08:57:20

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2001681
donny3
Posté le 15-06-2010 à 10:17:06  profilanswer
 

Merci
ok je vais voir ton poste
et je reviens


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  Est-ce possible en perl ?

 

Sujets relatifs
VBA, boucle For i = a to b a>b POSSIBLE ?usercontent.css et expressions régulières, possible ?
Perl > remplacer texte dans fichiers, recursivementEcho du contenu d'une variable possible ?
est ce possible en perl ?[PERL]Est-ce possible de ne pas faire attention à la case?
Perl : est il possible de lire un fichier sans le bloquer en écriture?[Perl] est-il possible d'exécuter une application Perl sur un hébergeu
Installer un module Perl par ftp, possible ?[PERL] sous windows c'est possible ?
Plus de sujets relatifs à : Est-ce possible en perl ?


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