Mettre en cache dans le DataSet le contenu d'un fichier xml [Résolu]

Messages postés
28
Date d'inscription
mardi 11 juillet 2006
Statut
Membre
Dernière intervention
27 octobre 2008
- - Dernière réponse : herve_labenere
Messages postés
28
Date d'inscription
mardi 11 juillet 2006
Statut
Membre
Dernière intervention
27 octobre 2008
- 14 oct. 2006 à 13:28
Je réalise actuellement un lecteur MP3. Je stocke au 1er lancement de l'application la liste des mp3 dans un fichier XML. J'utilise pour cela la classe xmltextwriter.
Ex :
<fichier id=''>
<Titre>
<Chemin>
</fichier>

 Pas de souci particulier jusquelà

J'ai lié un contrôle DataGridView au fichier xml produit, via un Dataset que j'initialise à chaque lancement de l'application.
Le problème c'est le temps de lecture. Pour un fichier  Xml de 7mo (60 000 mp3 x 3lignes = 180 000 lignes). il faut compter env 2 minutes avant que la liste des fichiers musicaux soit chargée dans le DataGrid et donc que le programme soit lancé. 

Y-a-il des moyens de raccourcir le délai ? Est-il par exemple possible de mettre en cache le contenu du Dataset ???
Sinon, je serai tenté d'utiliser plutôt un simple fichier text pour raccourcir la taille du fichier produit, ou carrément une base de données, chose qui paraît un peu disproportionné pour un simple lecteur mp3.
Merci d'avance,
Herwin
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
1163
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
12
3
Merci
avec un fichier texte tu vas devoir parser toi meme le fichier, ce qui risque finallement detre aussi lourd qu'un fichier xml...apres pour un lecteur qui prend en charge 60000 pistes, oui la base de données serait bien plus préconisée....ne serais ce qu'un fichier word de 7Mo me semble abhérent, alors un fichier binaire de 7Mo que tu vas parser.....une bd va taméliorer les temps de traitements a tous les points de vues (enfin a mon sens).

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 124 internautes nous ont dit merci ce mois-ci

Commenter la réponse de leprov
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
37
3
Merci
Même avis, si le programme doit être capable de stocker/lire jusqu'à 60'000 Mp3, une base de donnée s'impose assez logiquement...

<hr size="2" />-Blog-

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 124 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Bidou
Messages postés
28
Date d'inscription
mardi 11 juillet 2006
Statut
Membre
Dernière intervention
27 octobre 2008
0
Merci
Merci pour ces précisions.


Je réécris donc la partie stockage de mon appli.


Mais Windows Media Player dans sa bibliothèque Mulimédia gère des listes de fichiers média parfois beaucoup plus conséquente que 60 000 titres. Pourtant, je n'observe pas de délai particulèrement lourd au lancement du logiciel 
Commenter la réponse de herve_labenere