Recherche dans un fichier binaire

Recherche dans un fichier binaire - Java - Programmation

Marsh Posté le 24-07-2008 à 14:31:52    

Bonjour a tous,
 
Alors voila j'ai un fichier binaire contenant des données, j'arrive à y écrire de nouvelles données et a afficher toutes les données qu'il contient mais j'aimerai pouvoir rechercher une information en particulier....
 
par exemple un fichier contenant les informations d'un contrat contenant plusieurs clients, je voudrais afficher uniquement les informations du client 420...
 
comment puis-faire?  
 
Merci d'avance a ceux qui répondront  :)
 
ps: j'utilise un fichier binaire


Message édité par kiooik le 24-07-2008 à 14:56:38
Reply

Marsh Posté le 24-07-2008 à 14:31:52   

Reply

Marsh Posté le 24-07-2008 à 14:41:22    

si tu peux charger les données, pourquoi ne pas lire dans tes données ?
 
tu en as tant que ça ?


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Marsh Posté le 24-07-2008 à 14:50:16    

j'arrive a afficher toutes les données de tous les clients mais je voudrais afficher les données d'un client en particulier...
 
J'ai trouvé qu'on pouvait faire de l'acces direct avec un RandomAccessFile mais je ne sais pas cmt l'utiliser

Reply

Marsh Posté le 24-07-2008 à 14:55:28    

si tu arrive à tout récupérer, tu peux donc trier pour n'afficher que ce que tu veux. C'est crado, mais ça marchera.
 
Si ton fichier est en vrac, tu vas avoir du mal à savoir où pointer.


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Marsh Posté le 24-07-2008 à 14:57:50    

ok je vais essayer comme ca.
merci

Reply

Marsh Posté le 24-07-2008 à 15:29:11    

je n'y arrive pas...
 
voici ma méthode pour afficher les informations de mon fichier  
 
 
public void ajout()  throws IOException
          {
           DataInputStream entree = new DataInputStream(new FileInputStream ("Voiture" ));  
           boolean eof = false;
            int n;
           
           while(!eof)
           {  
             try
             {
           System.out.println(entree.readInt());
              System.out.println(entree.readUTF());
              System.out.println(entree.readUTF());
              System.out.println(entree.readInt());
              System.out.println(entree.readUTF());
              System.out.println(entree.readInt());
              System.out.println(entree.readUTF());
              System.out.println(entree.readUTF());
              System.out.println(entree.readUTF());
              System.out.println(entree.readInt());
              System.out.println(entree.readUTF());
              System.out.println(entree.readInt());
              }
             catch(EOFException e)
             {
              eof = true;
             }
     
             
           }  
            entree.close();
          }
 
 
qlq un pourrait m'aider?
 
Merci

Reply

Marsh Posté le 24-07-2008 à 16:52:51    

Ah ouais  :ouch:  
Est-ce que tu peux charger tout ton fichier en mémoire (en gros quelle taille fait-il) ?


---------------
Light is right
Reply

Marsh Posté le 24-07-2008 à 18:01:07    

j'ai refait un petite fichier contenant qlq données seulement pour tester, il fait 309 octets
 
j'aimerai utiliser RandomAccessFile mais je ne sais pas comment faire ...

Reply

Marsh Posté le 24-07-2008 à 19:25:25    

Si ton fichier est assez petit tu peut te permettre de le charger entièrement en mémoire, ca sera plus facile pour rechercher une information.


---------------
Light is right
Reply

Marsh Posté le 24-07-2008 à 21:07:22    

c'est bon j'ai résolu le probléme :)
 
Merci bcp pour tes conseils ^^

Reply

Marsh Posté le 24-07-2008 à 21:07:22   

Reply

Marsh Posté le 25-07-2008 à 08:41:10    

mais  !!! j'avais dit la même chose
je suis vexé[:thalis]


Message édité par brisssou le 25-07-2008 à 08:41:24

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Marsh Posté le 25-07-2008 à 13:41:47    

merci a toi aussi brissou ^_^

Reply

Marsh Posté le 25-07-2008 à 14:03:59    

j'aime mieux ça !


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed