Fala Galera, estou fazendo uma tela de opções para o meu sistema, mas nao tah certo ainda…
Eu criei a properties, gravo e consulto numa boa, mas ele soh “efetiva” a gravação somente quando eu finalizo o programa, nao em tempo de execução…
Na verdade, ele grava em tempo de execução sim, pois fui verifcar a alteração no codigo e consta, mas mesmo assim, qualquer consulta q se fizer no arquivo, me retorna a ULTIMA GRAVAÇÃO e nao a GRAVAÇÃO ATUAL!!!
Fechando-se o programa e reabrindo, uma consulta ao arquivo retorna a alteração feita… mas se realterar-mos este novamente, continua retornando a ultima gravacao…
Como q eu gravo:
try{
Properties props = new Properties();
java.io.InputStream in = getClass().getResource("/modelo/Opcoes.properties").openStream();
props.load(in); //lê os dados que estão no arquivo, jogando no props
java.io.File file = new java.io.File("./src//modelo/Opcoes.properties");
java.io.FileOutputStream out = new java.io.FileOutputStream(file);
props.setProperty("texto1",tela.getTexto1());
props.setProperty("texto2",tela.getTexto2());
props.store(out,"Alterando");//grava
//fecha os arquivos
in.close();
out.close();
javax.swing.JOptionPane.showMessageDialog(null,"Opções Gravadas");
tela.dispose();
} catch (Exception ex) {
javax.swing.JOptionPane.showMessageDialog(null,"Erro cadastrarOpcoes, EventosOpcoes "+ex.getMessage());
ex.printStackTrace();
}
Como eu retorno:
try{
//retorna o aquivo de properties
Properties props = new Properties();
java.io.InputStream arquivo = getClass().getResource("/modelo/Opcoes.properties").openStream();
props.load(arquivo); //lê os dados que estão no arquivo, jogando no props
//retorna o conteudo do arquivo
String texto1 = props.getProperty("texto1");
String texto2 = props.getProperty("texto2");
//coloca na tela
tela.setTexto1(texto1);
tela.setTexto2(texto2);
}catch(Exception ex){
ex.printStackTrace();
}
QQ tem de errado nisso???
Sera q eh problema de .properties??
flw
jopss
