Zapis ArrayList'y do pliku

0
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.ArrayList;


/**
 *
 * @author Robert
 */
public class punkt2D implements Serializable{
   private Float x;
   private Float y;

   public punkt2D(Float x, Float y)
   {
       this.x = new Float(x);
       this.y = new Float(y);
   }

   public punkt2D()
   {
       this.x = new Float(5);
       this.y = new Float(4);
   }

   public Float getOdleglosc1()
   {
       return new Float (Math.sqrt((Math.pow(this.x, 2))+(Math.pow(this.y, 2))));
   }

   static Float getOdleglosc2(punkt2D pkt1, punkt2D pkt2)
   {
       return new Float(Math.sqrt(Math.pow(pkt2.x-pkt1.x, 2)+Math.pow(pkt2.y-pkt1.y, 2)));
   }
   
   public String toString()
   {
       String tmp = new String();
       tmp += "x= ";
       tmp += this.x.toString();
       tmp += " y= ";
       tmp += this.y.toString();
       return tmp;
   }


   public void Lista()
   {
        ArrayList<Float> tab = new ArrayList();
		// dodanie elementu (obiektu) do listy
		tab.add(x);
		tab.add(y);

                try {
                         ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("a.txt"));
                         out.writeObject(tab);
                         out.close();
                    }
                catch(IOException ioe)
                    {
                         System.out.println("Error!");
                    }
   }


  public void pisz()
  {
      System.out.print(x);
      System.out.print(y);
      System.out.print("\nOdleglosc:" + getOdleglosc1());
      System.out.print("\nOdleglosc dwa:" + getOdleglosc2(this, this));
      System.out.print("\nWsp:" + toString());
  }
}

Problem polega na tym, że nie mogę zapisać tej ArrayListy do pliku. Błędów nie wyświetla, a mnie skończyły się pomysły.

0

A w którym miejscu wywołujesz metodę zapisującą?

0
public void Lista()
   {
        ArrayList<Float> tab = new ArrayList();
                // dodanie elementu (obiektu) do listy
                tab.add(x);
                tab.add(y);

                try {
                         ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("a.txt"));
                         out.writeObject(tab);
                         out.close();
                    }
                catch(IOException ioe)
                    {
                         System.out.println("Error!");
                    }
   }
0

To widziałem, pytałem gdzie wywołujesz metodę Lista()?

0

Acha :D Sorry błąd interpretacji.

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
       punkt2D punkt = new punkt2D();
       
       punkt.pisz();
       punkt.Lista();
        // TODO add your handling code here:
    }
0

Efekty działania metody pisz() widać na konsoli?

0

Tak.

0

Trochę rozbuduj

                try {
                         System.out.println("Zaczynam"):
                         ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("a.txt"));
                         out.writeObject(tab);
                         out.close();
                         System.out.println("Skonczylem"):
                    }

i rozejrzyj się dokładnie po dysku, czy na pewno nie ma gdzieś w okolicy programu pliku a.txt".

0

Powiem ci, że straszny ze mnie ciołek :) Plik nie zapisywał się w folderze z projektem, tylko w folderze ogólnym projektów :/

Sorrki za zamotę, niepotrzebnie czas marnowałeś.
Dzięki wielkie :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1