Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    115

    file mappati in memoria

    salve ragazzi avrei una domanda da proporvi:

    Sto realizzando un algoritmo che memorizza parte del suo lavoro in un file di testo. Questo file di testo memorizza "Oggetti". Il file viene sia letto che scritto. Ora per minimizzare la lettura sto cercando mappare il file in memoria..

    codice:
             FileInputStream inp=new FileInputStream("NomeFile.txt");
             FileChannel channel = inp.getChannel();
             CRC32 crc=new CRC32();
             int lenght= (int) channel.size();
             MappedByteBuffer buffer= channel.map(FileChannel.MapMode.READ_ONLY, 0, lenght);
             
             for(int i=0;i<lenght; i++){
                 byte b=buffer.get(i);
                 crc.update(b);
     
             }

    Ora la domanda è: come faccio a trasformare i byte che ho letto dal file di testo(questo file contiene oggetti di tipo Grafo) nell'oggetto di tipo Grafo??? Oppure e possibile mappare direttamente Oggetti????

    Secondo voi la mappatura del file consente di risparmiare tempo nella lettura??? si deve considerare pero che questo file deve memorizzare circa 100.000 oggetti....

    grazie in anticipo!!!

  2. #2
    Penso che potresti risolvere serializzando il tuo Grafo: java.io.Serializable
    Quindi, a run-time crei/aggiorni i tuoi oggetti Grafo, che andrai a scrivere su file solo quando "hai finito il tuo lavoro".

    In questo modo dovresti leggere/scrivere i dati una sola volta.

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    115
    si certo ma mappare il file fa risparmiare tempo? e soprattutto ne vale la pena??

    grazie per la risposta

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.