Bonjour à tous !
Je dois réaliser en java un editeur XML, c´est à dire quelque chose qui puis lire et ecrire des informations, qui ont un format précis (et toujours le meme), dans des fichiers au format XML.
En gros c´est une espece de base de données au format XML où chaque fichier représente une table.
Le probleme est que ces fichiers devraient faire plusieurs mega, rendant pratiquement impossible l´utilisation d´un parser DOM (qui charge tout le fichier XML en memoire) . J ai donc pensé a un parser SAX (qui genere un evenement pour chque tag, je crois bien).
Seulement, la question que je me pose est celle de la vitesse : en effet l´utilisateur doit pouvoir rechercher un enregistrement parmi des milliers et a chaque recherche, on va devoir re-lire une bonne partie du fichier XML pour tomber sur le bon enregistrement.
J´ai donc pense a essayer de mettre en place un espece d´index, où je stockerai en memoire, pour chaque n° d´enregistrement, la position (en octets) dans le fichier XML, histoire d´avoir un acces direct sans avoir pour autant à garder tout le fichier XML en memoire.
Qu´en pensez vous ?
Y´a t´il une solution plus simple ?
Sinon comment implementer ca en Java ??? (en gros ! je ne vous demande pas de faire le boulot a ma place mais plutot quelles sont les grandes lignes a suivre)
Merci d´avance
Denis
Partager