Salvar Array

4 respostas
W

E ai pessoal…

Minha pegunta hj é:

Como eu faço pra salvar um array em um arquivo para depois abri-lo novamete?

Valeu!

4 Respostas

J

voce pode coloca-lo num objeto e usar ObjectOutputStream pra gravar em arquivo, e ObjectInputStream para le-lo de volta…

import java.io.Serializable;

public class ObjetoComArray implements Serializable {
    TIPO[] array;
   public ObjetoComArray(TIPO[] array) 
   {
         this.array = array;
   }
}

pra criar o objeto, e:

//...
//...
//...
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(nome));
out.writeObject(new ObjetoComArray(seuArray));
out.flush();
//...
//...
//...

espero ter ajudado

W

valeu javaAdicted, mas não adiantou!

eu tenho um array[6][2] e preciso salva-lo e abri-lo depois.

J

dessa forma voce pode fazer um objeto parecido com o ObjetoComArray, mas com matriz, nao é verdade…

import java.io.Serializable;

public class ObjetoComMatriz implements Serializable {
    TIPO[][] matriz;
   public ObjetoComMatriz(TIPO[][] m)
   {
         this.matriz = m;
   }
}

ou entao, usar um BufferedWriter, e escrever os dados da matriz num arquivo de texto, de forma organizada, mas nao vai dar pra fazer isso se seu array for de objetos…

bom, vai tentando,
boa sorte

J
ObjectOutputStream out;
		try {
			out = new ObjectOutputStream(new FileOutputStream("teste.dat"));
		int[][] novo = new int[6][2];
		for(int i = 0; i < 6; i ++) {
			novo[i][0] = i;
			novo[i][1] = 2 * i;
		}
			out.writeObject(new ObjetoComMatriz(novo));
			out.flush();
			ObjectInputStream in = new ObjectInputStream(new FileInputStream("teste.dat"));
			ObjetoComMatriz ret = (ObjetoComMatriz) in.readObject();
			for(int i = 0; i < 6; i ++) {
				System.out.print(ret.matriz[i][0] + " ");
				System.out.println(ret.matriz[i][1]);
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}

testei esse codigo (junto com aquela classe ObjetoComMatriz) e ela funcionou como eu esperava…nao sei bem se é isso o que voce quer fazer, mas espero ter ajudado

Criado 30 de abril de 2005
Ultima resposta 2 de mai. de 2005
Respostas 4
Participantes 2