Ciao a tutti!Ho un problema che non riesco a risolvere con le classi FileReader e PrintWriter,le quali consentono di scrivere su un file di testo.
Vi posto un metodo che aggiunge delle persone in una rubrica:
codice:
//Metodo che aggiunge un elemento (vincolo:ogni nominativo deve essere diverso da tutti gli altri)
	public void aggiungi(String nome,String telefono,String fax){
		boolean presente = false;
		for (Persona contatto : contatti){
			if (nome.equals(contatto.getNome())){
				System.out.println("Il nome " + nome + " è già presente nella lista");
				presente = true;
				
			}
		}
		if (presente == false){
		Persona contatto = new Persona(nome,telefono,fax);
		contatti.add(contatto);
		}
	}
Bene!Io ora voglio implementare questo metodo,in modo tale che scriva su un file di testo tutto ciò che produce,e se riaccede al file per una seconda,terza..ecc volta,non loi sovrascrive ma accoda la scrittura di altri dati.

Io ho provato a fare un file di test di questo tipo:
codice:
import java.io.*;
import java.util.Scanner;
public class File {
public static void main (String[]args) throws FileNotFoundException {
	PrintWriter scrittore = new PrintWriter("/home/lord/Desktop/ciccio.txt");
	Rubrica rubb = new Rubrica();
	rubb.aggiungi("ciccio", "123", "234");  //nome telefono fax
	scrittore.print(rubb);
	scrittore.close();
Bene.Il file lo scrive,ma mi scrive questa roba qui:Rubrica@e48e1b

Come posso risolvere questo problema?

Spero possiate aiutarmi grazie in anticipo!