Gravar TreeMap num arquivo

3 respostas
J

Bom dia pessoal,
Estou com uma TreeMap, porém eu preciso salvar ela num arquivo, para a próxima vez que iniciar meu ler do arquivo e carregar minha TreeMap novamente, estou muita dificuldade nessa operação, será que alguém poderia me dar uma força?

abraços,
Ficaria Muito Agradecido

Jhonata

3 Respostas

L

“Jhonjhon”:
Bom dia pessoal,
Estou com uma TreeMap, porém eu preciso salvar ela num arquivo, para a próxima vez que iniciar meu ler do arquivo e carregar minha TreeMap novamente, estou muita dificuldade nessa operação, será que alguém poderia me dar uma força?

abraços,
Ficaria Muito Agradecido

Jhonata

assim?!

public class Teste {
	public static void main(String[] args) throws FileNotFoundException,
			IOException, ClassNotFoundException {

		String arquivo = "teste.xxx";

		Map<Integer, Integer> tree = new TreeMap<Integer, Integer>();
		tree.put(1, 1);
		tree.put(2, 2);
		tree.put(3, 3);

		ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(
				arquivo));
		oos.writeObject(tree);
		oos.close();

		ObjectInputStream ois = new ObjectInputStream(new FileInputStream(
				arquivo));
		tree = (Map<Integer, Integer>) ois.readObject();
		System.out.println(tree.get(1));
		System.out.println(tree.get(2));
		System.out.println(tree.get(3));
		ois.close();
	}
}
J

Estou fazendo algo assim oh:

para escrever no arquivo:

try {   
          FileOutputStream fileOutput = new FileOutputStream("Indice.txt");   
          ObjectOutputStream objectOutput = new ObjectOutputStream(   
                new BufferedOutputStream(fileOutput));   
          objectOutput.writeObject(map);   
          objectOutput.close();   
       } catch (Exception e) {   
          System.out.println(e.toString());   
       }   
 }

agora para ler do arquivo eh onde está dando problema, estou fazendo assim:

TreeMap<String, Base> Map = null;   
     
        try  
        {   
              
       FileInputStream fileInput = new FileInputStream("Indice.txt");   
        ObjectInputStream objectInput = new ObjectInputStream(   
                  new BufferedInputStream(fileInput));   
         map = (Map<String, Base>) objectInput.readObject();   
        objectInput.close();   
              
        }   
        catch( IOException ioException )   
        {   
           System.err.println("Erro ao Abrir ao arquivo");   
        }

Os erros são os seguintes:
incompatible Types
map=<Map<String, Base>> objectInput.readObject();

e outro erro é:
Indice.java uses unchecked or unsafe operations

Só para te falar, Base é uma classe, onde implemento meus construtores e os métodos set e get e essa classe Base ela implementa a interface Serializable.

Alguém saberia me ajudar?
abraços,

Jhonata

J

//Foi duas vezes
//Sorry :slight_smile:

abraços

Criado 8 de junho de 2007
Ultima resposta 8 de jun. de 2007
Respostas 3
Participantes 2