pmuniz:
Olá guj,
Meu problema é o seguinte:
Possuo um arquivo com duas linhas e preciso obter os dados do arquivo, escrevi o seguinte método para fazer isto:
public void getConfiguracoes(){
try{
configFile = new File("c:/simaq/cnf/simaq.conf");
BufferedReader bufRdr = new BufferedReader(new FileReader(configFile));
String line = null;
int count = 0;
while((line = bufRdr.readLine())!= null){
if (count == 0){
String servidor = line;
count++;
System.out.println(servidor);
}
if (count == 1){
String porta = line;
count++;
System.out.println(porta);
}
}
}catch(IOException e){
System.out.println(e);
}
}
O problema é que não funcionou, servidor e porta estão recebendo a mesma linha do arquivo, a linha 1. Como faço para que a String servidor receba a linha 1 e a String porta receba a linha 2?
Outras soluções também são bem vindas.
Olá pmuniz,
o erro no código está no seguinte trecho:
int count = 0;
while((line = bufRdr.readLine())!= null){
if (count == 0){
String servidor = line;
count++;
System.out.println(servidor);
}
if (count == 1){
String porta = line;
count++;
System.out.println(porta);
}
}
basta colocar o else:
int count = 0;
while((line = bufRdr.readLine())!= null){
if (count == 0){
String servidor = line;
count++;
System.out.println(servidor);
}
else {
if (count == 1){
String porta = line;
count++;
System.out.println(porta);
}
}
}
claro.. o amigo LIPE sugeriu uma ótima dica, utilizar properties. como eu não conhecia o properties.. e estou ainda sem sono... hehehe
lá vai...
só uma observacao crie um arquivo configuracao.ini vazio antes de executar este programa.
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
/*
* Created on 15/02/2005
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
/**
* @author Teste
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class Testandoproperties {
public static void main(String[] args) throws FileNotFoundException, IOException {
Properties arquivoDeConfiguracao = new Properties();
arquivoDeConfiguracao.load(new FileInputStream("configuracao.ini"));
String servidor = arquivoDeConfiguracao.getProperty("servidor");
String nomedobanco = arquivoDeConfiguracao.getProperty("nome do banco");
System.out.println("servidor =" + servidor);
System.out.println("nome do banco =" + nomedobanco);
arquivoDeConfiguracao.setProperty("servidor","nome do servidor");
arquivoDeConfiguracao.setProperty("nome do banco","bancodedadosmysql");
// arquivodeconfiguracao.list(System.out);
arquivoDeConfiguracao.store(new FileOutputStream("configuracao.ini"),
"arquivo de configuracao configuracao.ini");
}
}
e este é o conteúdo do arquivo configuracao.ini, após a execução do programa:
#arquivo de configuracao configuracao.ini
#Tue Feb 15 02:55:30 BRST 2005
nome\ do\ banco=bancodedadosmysql
servidor=nome do servidor