Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    Salvare oggetto in file

    Salve stò tentando di salvare un oggetto della mia classe in un file ma nn ci riesco...

    utilizzo i bellissimi metodi writeObject e readObject e nessuno dei 2 da errore!!!

    il file viene comodamente salvato e perfettamente letto...
    ma quando lo leggo è completamente vuoto!!!!

    sapete da cosa può dipendere????
    nome del file nn valido???
    riferimenti ad oggetti in memoria sbagliati????

    io nn so più che dire...grazie.

    PS
    Purtroppo nn posso utilizzare i db perchè il progetto è per l'uni...
    ...la struttura dati che cerco di salvare è abbastanza complessa...
    ...se mi prendono i 5 minuti cambio tutto ed il metodo me lo creo...
    ...sicuramente meno performante ma sicuramente funzionante...grazie.
    Let's your dream came true!

  2. #2

    Re: Salvare oggetto in file

    sapete da cosa può dipendere????
    L'oggetto che vuoi serializzare, deve essere l'istanza di una classe che implemente l'interfaccia Serializable. Ti posto un esempio:

    Main
    codice:
    public static void main(String[] args) {
        DaSerializzare o = new DaSerializzare(1, 0, "Hello, world!");
    
        try {
            // Serialize to a file
           ObjectOutput out = new ObjectOutputStream(new FileOutputStream("myObject.ser"));
           out.writeObject(o);
           out.close();
        } catch (IOException e) {
           e.printStackTrace();
        }
    
    }
    Classe da serializzare
    codice:
    public class DaSerializzare implements Serializable {
    	private int a, b;
    	private String s;
    	
    	public DaSerializzare(int a, int b, String s) {
    		this.a = a;
    		this.b = b;
    		this.s = s;
    	}
    }
    Il mio Blog

    Nella vita come sul tram, quando ti siedi sei al capolinea.
    Camillo Sbarbaro

  3. #3
    scusa...nn ti avevo già detto che tutte le classi implementano l'interfaccia Serializable...

    infatti nn mi da nessun errore (altrimenti avrebbe dato un errore tipo "DEVI IMPLEMENTARE L'INTERFACCIA SERIALIZABLE, PIRLA!" )

    altro???
    Let's your dream came true!

  4. #4
    Hai provato ad aprire il file serializzato con un editor di testo (o meglio, un editor esadecimale)? Almeno i campi stringa dovresti vederli in chiaro.

    In caso positivo, potrebbe essere un problema di deserializzazione.
    http://javaalmanac.com/egs/java.io/D...Obj.html?l=rel
    Il mio Blog

    Nella vita come sul tram, quando ti siedi sei al capolinea.
    Camillo Sbarbaro

  5. #5
    proverò grazie...

    PS
    ma si può salvare su file qualsiasi classe a rigor di logica, vero???
    perchè la mia è diciamo una classe con all'interno 4 arraylist con riferimenti incrociati...
    spero possa andare...
    Let's your dream came true!

  6. #6
    Originariamente inviato da ale500
    perchè la mia è diciamo una classe con all'interno 4 arraylist con riferimenti incrociati...
    spero possa andare...
    Come puoi vedere, la classe ArrayList implementa l'interfaccia Serializable, quindi la puoi serializzare tranquillamente.

    Se tenti di serializzare una classe che non implementa tale interfaccia, dovresti ottenere un'eccezione.
    Il mio Blog

    Nella vita come sul tram, quando ti siedi sei al capolinea.
    Camillo Sbarbaro

  7. #7
    infatti è questo il bello...
    tutte le mie classi implementano l'interfaccia serializable quindi nn ci dovrebbero essere problemi...ma invece!

    ora cmq provo a deserializzare come mi hai detto..

    immaginati 4 array..
    prima li salvavo in 4 file diversi..poi visto che ci sono delle dipendenze incrociate mi sono detto faccio un'unica classe che li ingloba tutti e 4 e poi salvo l'intera classe...

    ed eccomi qua con questo problema..nessun errore ma salvataggio errato...
    cmq ho provato ad aprire il file...i dati sembrano esserci quindi...

    appena mi ci rimetto deserializzo e via..grazie intanto.
    Let's your dream came true!

  8. #8
    Se postare il codice, posso fare una prova anche io. :master:
    Il mio Blog

    Nella vita come sul tram, quando ti siedi sei al capolinea.
    Camillo Sbarbaro

  9. #9
    sarebbe un peletto impegnativo postare una 20-na di classi anzi anzi...

    grazie dell'interessamento, come ti ho detto appena ho 5 min lo provo e ti faccio sapere, grazie ancora...
    Let's your dream came true!

  10. #10
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    prova a fargli fare un flush ...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

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.