Setting arquivo.properties

Seguinte pessoas…sinto que estou fazendo isso errado mas os tutoriais e exemplos que achei não me ajudam muito…

Tava querendo fazer um método para atribuir valores para um properties dinamicamente…

meu método ficou assim e está me retornando java.io.FileNotFoundException…

o método:

public static void setProperty(String chave, String valor) throws IOException {
	Properties propriedades = new Properties();
		try {
			propriedades.load(new FileInputStream("erros.properties"));
			propriedades.setProperty(chave, valor);
			propriedades.store(new FileOutputStream("erros.properties"), null);
		} catch (IOException ex) {
			ex.printStackTrace();
		}
	}

erros.properties está na mesma pasta que o .java da Classe

Valeu…

Usando o path desta maneira você indica que o arquivo está localizado na pasta principal do projeto, e não na pasta da classe, coloque o arquivo na pasta root do projeto que deve funcionar.


package br.com;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URL;
import java.util.Properties;


public class Parametros extends Properties{
	
	private static final long serialVersionUID = 1L;

	private File file = new File("Parametros.properties");	

	public Parametros() {
		super();
		if(! file.exists()){
			try {
				file.createNewFile();

				Properties defaults = this.loadParametros();
				defaults.setProperty("nome", "nomeDefault");
				defaults.setProperty("port", "12345");
				defaults.setProperty("host", "localhost");

				this.storeParametros(defaults);
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}


	public Parametros(Properties defaults) {
		super(defaults);
	}


	

	public  Properties loadParametros() throws FileNotFoundException, IOException{
		Properties props =  new Properties();
		props.load(new FileInputStream(file));
		return props;

	}

	public void  storeParametros(Properties propertie) throws IOException{		
		FileOutputStream out = new FileOutputStream(file);
		propertie.store(out, null);
		out.close();
	}	


		

}



Opa…era um problema no path mesmo…a aplicação estava procurando o arquivo na pasta do eclipse (lol)…
eu substitui a linha por:

FileInputStream("C:/Documents and Settings/...")

o problema agora é achar uma maneira melhor de especificar o Path do arquivo…