Gostaria de informar que esse é meu primeiro tópico aqui no GUJ, sempre quando estou com dúvidas eu fuço os tópicos aqui e sempre me resolvem, porém estou com um probleminha que gostaria de pedir ajuda diretamente à vocês.
Eu criei um Repositorio no qual eu salvo um vetor de objeto(Vector) através do ObjectOutputStream, mas sempre que rodo o programa da sempre o mesmo erro, IOException.
Quando uso o método inserirCliente(linha 14), eu recebo um IOException, que vem do metodo escreverArquivo(linha 52), mas não consigo achar o erro, se alguém poder me ajudar ficaria muito grato!!!
Att.
Segue o código abaixo:
[code]public class RepositorioClienteArquivo implements Repositorio{
private Vector<Cliente> vectorClientes;
private File file;
public RepositorioClienteArquivo() throws IOException, ClassNotFoundException{
this.file = new File("arquivoClientes.data");
this.vectorClientes = new Vector<Cliente>();
escreverArquivo();
lerArquivo();
}
public void inserirCliente(Cliente c) throws IOException {
this.vectorClientes.add(c);
escreverArquivo();
}
public void removerCliente(Cliente c) throws IOException{
this.vectorClientes.remove(c);
escreverArquivo();
}
public Vector<Cliente> procurarCliente(String entrada) {
Vector<Cliente> resultado = new Vector<Cliente>();
Iterator<Cliente> lista = new Iterator<Cliente>(this.vectorClientes);
while(lista.hasNext()){
Cliente c = lista.next();
if(c.getNomeCliente().toLowerCase().contains(entrada.toLowerCase())){
resultado.add(c);
}
}
return resultado;
}
@SuppressWarnings("unchecked")
public void lerArquivo() throws ClassNotFoundException, IOException{
ObjectInputStream input = new ObjectInputStream(new FileInputStream(file));
this.vectorClientes = (Vector<Cliente>)input.readObject();
}
public void escreverArquivo() throws IOException{
ObjectOutputStream output = new ObjectOutputStream(new FileOutputStream(file));
output.writeObject(this.vectorClientes);
}
}
[/code]