[RESOLVIDO]Como ler arquivo INI ou qualquer outro

7 respostas
B

Gente, tenho a seguinte dúvida…

Quero gravar informações em um arquivo INI para depois recuperá-las. Já pesquisei
isso no Google, porém não obtive sucesso (parece que preciso baixar uma classe que
não existe por padrão).
Alguém, por favor me dá uma luz :idea: !!!

7 Respostas

FPaschoal

Essas informações seriam para carregar as configurações do seu sistema? Se você tiver livre opção para mudar o tipo de arquivo eu recomendaria utilizar arquivos do tipo .properties, que tem API´s especificas na linguagem que facilitam trabalhar com esse tipo de arquivo, de uma olhada nesse tutorial do próprio GUJ:

http://www.guj.com.br/articles/35

Case tenha que ser .INI mesmo então trate ele como um arquivo texto normal (.txt) para ler e gravar as propriedades.

B

bom, vou dar uma olhada no post, mas já adiantando, com seria trata-lo como .txt?

utluiz

Se quiser ler arquivos INI mesmo use essa lib: http://ini4j.sourceforge.net/
Faz o download e coloca o jar de 100k no seu classpath.

Tratar como texto seria carregar o arquivo como uma String, por exemplo, e procurar os valores desejados no conteúdo.
Não acho que compense você ler/gravar manualmente esses arquivos, vai gastar um tempo precioso e provavelmente o código vai ficar com bugs.

Enfim, se INI não for um requisito necessário, vai para o “.properties” que você ganha mais.

marcospaulo.suporte

realmente amigo, se não for obrigado a trabalhar com .INI, trabalhe com .properties.
É muito mais fácil, pratico…

Eu já tive a mesma dúvida e hoje uso properties sem problema algum.

B

FPaschoal:
Essas informações seriam para carregar as configurações do seu sistema? Se você tiver livre opção para mudar o tipo de arquivo eu recomendaria utilizar arquivos do tipo .properties, que tem API´s especificas na linguagem que facilitam trabalhar com esse tipo de arquivo, de uma olhada nesse tutorial do próprio GUJ:

http://www.guj.com.br/articles/35

Case tenha que ser .INI mesmo então trate ele como um arquivo texto normal (.txt) para ler e gravar as propriedades.

Bom, Amigo, entendi perfeitamente, mas ficou apenas uma dúvida…
Tenho que criar uma nova classe chamada props?
Essa classe se encontra dentro do NetBeans pra eu poder criar?
Preciso fazer o download dessa classe?

:oops: :?:

utluiz

Trabalhar com properties é simples, já vem tudo pronto no Java.

Para ler:
Properties prop = new Properties();
 
try {

    //carrega properties
    prop.load(new FileInputStream("config.properties"));
 
    //recupera e imprime valores
    System.out.println(prop.getProperty("database"));
    System.out.println(prop.getProperty("dbuser"));
    System.out.println(prop.getProperty("dbpassword"));
 
} catch (IOException ex) {
    ex.printStackTrace();
}
Para gravar:
Properties prop = new Properties();
 
try {

    //definir as propriedades e valores
    prop.setProperty("database", "localhost");
    prop.setProperty("dbuser", "mkyong");
    prop.setProperty("dbpassword", "password");
 
    //salvar o arquivo
    prop.store(new FileOutputStream("config.properties"), null);
 
} catch (IOException ex) {
    ex.printStackTrace();
}

Links:
http://www.mkyong.com/java/java-properties-file-examples/
http://www.exampledepot.com/egs/java.util/Props.html

B

PERFEITO! VOU FAZER A FESTA, AGORA!

:smiley:

Criado 28 de setembro de 2012
Ultima resposta 5 de out. de 2012
Respostas 7
Participantes 4