Auriez vous une solution?

betty555 Messages postés 38 Date d'inscription mercredi 17 janvier 2007 Statut Membre Dernière intervention 6 juillet 2010 - 18 mars 2010 à 12:22
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 18 mars 2010 à 13:50
Bonjour,

J'ai un fichier plat en entrée, qui doit être lu une fois l'application est lancée, ce fichier contient des centaines de lignes, voir des miliers..
Les lignes sont de la forme:
codeEtudiant;nomEtudiant;prenomEtudiant...

Ce que je fais, c'est parcourir ligne par ligne, faire un split, et créer un objet Etudiant pour chaque ligne, puis mettre ces objets dans une arrayList.

Et je fais par la suite les traitements sur la liste retournée, comparaison avec la table etudiant, suppression, mise à jours..etc

Auriez vous une autre solution ==> au lieu de créer un objet pour chaque ligne...


Merci pour vos réponses,

2 réponses

Utilisateur anonyme
18 mars 2010 à 12:50
Bonjour

Pourquoi ne veux-tu pas créer un objet par ligne? Ce n'est pas si grave.



TUER : http://tuer.sourceforge.net/tuer.jnlp

yeah! vive java
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
18 mars 2010 à 13:50
Salut,

Auriez vous une autre solution


Il existe des tas de solution : ne pas construire d'arraylist et travailler directement sur le flux du fichier, mettre les données dans un tableau, faire un objet qui contient plusieurs lignes, etc.

Mais ce n'est pas pour ça que ce sera plus efficace pour autant.

Tout dépend du traitement tu appliques sur les données. Si c'est uniquement les traiter en séquentiel, ca sert à rien de les mettre dans un ArrayList, ca c'est sûr, si tu fais de nombreuses recherches sur les élément (style par codeEtudiant), il vaut mieux les mettre dans un HashMap, ce sera bien plus rapide en accès.

Bref, c'est à toi de voir ce qui est le plus efficace selon tes besoins.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0