Fusion si doublon dans un fichier csv

Utilisateur anonyme -  
KX Messages postés 16760 Date d'inscription   Statut Modérateur Dernière intervention   - 30 nov. 2015 à 18:22
Bonjour,
Je tourne en rond afin de trouver une façon simple de gérer mon problème. J’espère que quelqu'un aura une réponse.
J'ai un fichier recensant les enfants des agent, cela donne :
CodeUnique;Civilité;Nom;prenom;adresse mail;telephone;Enfant1;Enfant2;Enfant3
01;MME;BESSON;ROMAIN;[email protected];02510000000;Mathieu;;;
02;MLE;FORTUNE;ANNIE;null;02510000001;Julien;;;
03;MLE;HOG;ANNE;null;02510000002;Juliette;;;
04;MR;BILLY;ELIOT;null;02510000003;Romain;;;
04;MR;BILLY;ELIOT;null;02510000003;Thomas;;;
05;MME;DE LIGNIVILLE;MARIE-EMILIE;null;02510000005;Camille;;;
06;MR;BONNEROT;PACAL;null;02510000006;Baptiste;;;
06;MR;BONNEROT;PACAL;null;02510000006;Francois;;;
06;MR;BONNEROT;PACAL;null;02510000006;Annie;;;

Le problème c'est que mon application n'accepte qu'une seule ligne par agent.
Ce que je voudrais c'est fusionner les lignes en doublon afin d'avoir:
CodeUnique;Civilité;Nom;prenom;adresse mail;telephone;Enfant1;Enfant2;Enfant3
01;MME;BESSON;ROMAIN;[email protected];2510000000;Mathieu;;
02;MLE;FORTUNE;ANNIE;null;2510000001;Julien;;
03;MLE;HOG;ANNE;null;2510000002;Juliette;;
04;MR;BILLY;ELIOT;null;2510000003;Romain;Thomas;
05;MME;DE LIGNIVILLE;MARIE-EMILIE;null;2510000005;Camille;;
06;MR;BONNEROT;PACAL;null;2510000006;Baptiste;Francois;Annie


Le truc c'est que comme le nombre de doublon peut varier je ne sais donc pas comment faire.De plus, c'est un fichier qui peut avoir jusqu’à 8000 lignes.
Je ne suis pas un expert java par avance merci de votre aide.
Cordialement,
Romain
A voir également:

1 réponse

KX Messages postés 16760 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

8000 lignes c'est rien du tout, à vue de nez tu dois avoir 60 caractères par ligne donc tu pourrais tout mettre en mémoire, ça ferait 0.5 Mo en tout...

Je te conseilles d'utiliser un TreeSet pour trier tes lignes, ça enlèvera les doublons.
0