Ler arquivo de texto dentro do projeto

2 respostas
N

Olá galera, resolvi aprimorar meu TCC e preciso de uma ajuda, eu estou utilizando um método (tirado desse fórum) que lê um arquivo de configurações (.propriets) e coloca no programa, queria saber se tem como colocar esse arquivo dentro do projeto (para evitar ter que mover junto toda vez que mover o programa de lugar) e lê-lo

public String lerDados(String documento, String dado)
	{
		File file = new File(documento);      
		Properties props = new Properties();  
		FileInputStream fis = null;  
		try {  
		    fis = new FileInputStream(file);  
		    props.load(fis);    
		    fis.close();  
		    return  props.getProperty(dado);
		}  
		catch (IOException ex) {  
			JOptionPane.showMessageDialog(null, "Algo ocorreu de errado na leitura de configurações", "", JOptionPane.ERROR_MESSAGE);
		    System.out.println(ex.getMessage());  
		    ex.printStackTrace();  
		}  
		return null;
	}
public void escreveDados(String documento, String dado, String dado_salva)
	{
		File file = new File(documento);      
		Properties props = new Properties();  
		FileInputStream fis = null;  
		try {  
		    fis = new FileInputStream(file);  
		    props.load(fis);    
		    fis.close();  
		    props.setProperty(dado, dado_salva);
		    props.store(new FileOutputStream(documento), null);
		}  
		catch (IOException ex) {  
			JOptionPane.showMessageDialog(null, "Algo ocorreu de errado, favor tentar novamente!", "", JOptionPane.ERROR_MESSAGE);
		} 
	}

Se alguém puder me ajudar eu agradeço

2 Respostas

J

Olá.

Geralmente, um arquivo de configuração é algo que pode ser alterado fora da aplicação. Se você embuti-lo dentro da aplicação você perde esta flexibilidade e já não existe um motivo para existir um “arquivo de configuração”.

Mas se entendi bem, você quer manter estas configurações no escopo da aplicação para que não seja necessário ler este arquivo a todo momento. Para isto, o ideal seria você criar uma estrutura (uma classe) que represente este arquivo de configuração, e preencha a classe assim que a primeira requisição de uma configuração for realizada.

Atente-se também a definir se a configuração poderá ser alterada enquanto a aplicação estiver rodando. Caso sim, você terá que checar periodicamente se o arquivo foi alterado (armazenando a data de última alteração e checando se é diferente).

N

JoaquimGM:
Olá.

Geralmente, um arquivo de configuração é algo que pode ser alterado fora da aplicação. Se você embuti-lo dentro da aplicação você perde esta flexibilidade e já não existe um motivo para existir um “arquivo de configuração”.

Mas se entendi bem, você quer manter estas configurações no escopo da aplicação para que não seja necessário ler este arquivo a todo momento. Para isto, o ideal seria você criar uma estrutura (uma classe) que represente este arquivo de configuração, e preencha a classe assim que a primeira requisição de uma configuração for realizada.

Atente-se também a definir se a configuração poderá ser alterada enquanto a aplicação estiver rodando. Caso sim, você terá que checar periodicamente se o arquivo foi alterado (armazenando a data de última alteração e checando se é diferente).

Joaquim, obrigado pela ajuda mas eu estava em mente fazer outra coisa, por exemplo, meu arquivo de configuração está no desktop, se eu mexer ele pra outro lugar (documentos por exemplo), o programa começará a dar erros, de não encontrar o arquivo de configuração, eu queria que ele achasse conforme eu mexesse o programa, igual no HTML que tem a função “…/”

Criado 3 de abril de 2014
Ultima resposta 7 de abr. de 2014
Respostas 2
Participantes 2