PDA

Visualizza la versione completa : [JAVA] Salvare i dati in input su un file (era:help)


jean83
20-04-2004, 13:59
Salve a tutti!!sono uno studente alle prime armi con la programmazione...so qualcosa di java...avrei bisogno di crearmi un programmino che riceve alcuni dati e poi li salva: mi spiego riesco a crearmi l'input e l'oggetto ci faccio le mie operazioni ma poi non so salvare tutti i miei oggetti in un file. Come faccio?

Se volessi creare un interfaccia grafica c'e' qualche ambiamte che mi puo' aiutare a craerla?

ladyBlu
20-04-2004, 15:06
ciao jean, benvenuto :)
ti invito a leggere il regolamento del forum con particolare attenzione alla sezione riguardante i titoli: Leggi_Regolamento (http://forum.html.it/forum/showthread.php?s=&threadid=588640) --> deve essere sempre specificato il linguaggio e i titoli devono essere esplicativi pił possibile del contenuto della discussione.


Buon proseguimento, ciao

LeleFT
20-04-2004, 22:51
Se per salvare i dati in un file intendi salvare i tuoi dati in un file di testo (informazioni testuali) puoi appoggiarti alla classe PrintStream (java.io.*)

Se, invece, vuoi salvare oggetti, nel senso che vuoi proprio salvare la struttura dell'oggetto creato, per poterne, in un secondo momento, creare un'altro leggendolo dal file di testo, allora devi documentarti sulla Serializzazione: devi innanzitutto implementare l'interfaccia Serializable (java.io.*) nella classe che vuoi salvare su file e, successivamente, creare un oggetto di tipo ObjectOutputStream e richiamare il relativo metodo writeObject()

Qui hai un esempio di un programma che contiene un oggetto NumeroImmaginario che viene salvato sul file "prova.dat":


import java.io.*;

public class MiaClasse {
public class NumeroImmaginario implements Serializable {
private int a, b;
public NumeroImmaginario(int a, int b) {
this.a = a;
this.b = b;
}
}

private NumeroImmaginario numero;
private ObjectOutputStream oos; // Questo oggetto rappresenta il file

public MiaClasse() {
// Rappresenta l'immaginario (5 + 6i)
numero = new NumeroImmaginario(5, 6);

// Apro (ed eventualmente creo) il file di output
oos = new ObjectOutputStream( new FileOutputStream("prova.dat") );

// Salvo sul file il numero immaginario (come oggetto)
salvaOggetto(numero);
}

private void salvaOggetto(NumeroImmaginario oggetto) {
try {
oos.writeObject(oggetto);
} catch (Exception e) { e.printStackTrace(); }
}

public static void main(String [] args) {
MiaClasse mc = new MiaClasse();
}
}


Ciao. :ciauz:

Loading