Ler um arquivo ....dando erro

OLá …estou tentando fazer um teste pra substituir sql por aqruivo
properties…

mas está me dando erro …

o que pode ser não está achando o aqruivo mas está junto com o .java

se alguém puder me ajudar …

abs


import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;

public class SemSql {

/**
 * @param args
 */
 private static final  String USUARIO = "usuario.selectByName";
 
public static void main(String[] args) throws FileNotFoundException, IOException {
	// TODO Auto-generated method stub
	
   	
	Properties queries = new Properties();
	
	queries.load(new FileInputStream("arquivo.txt"));

	 String nome =queries.getProperty(USUARIO);
	 
	 System.out.println("nome="+nome);
}

}


erro :
Exception in thread “main” java.io.FileNotFoundException: arquivo.txt (O sistema não pode encontrar o arquivo especificado)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at src.SemSql.main(SemSql.java:23)

arquivo.txt

usuario.selectByName=select * from usuario where name = ?
usuario.selectByEmail=select * from usuario where email = ?

ela está junto com o .class tbm?
tenta colocar o caminho completo…
;p

Dica: ao usar arquivos .properties, se você vai pô-los junto com suas classes, use getClass().getClassLoader().getResourceAsStream() em vez de usar uma FileInputStream.

O seu caso é que ele está procurando o arquivo “arquivo.txt” no diretório corrente, não no diretório onde está seu .class. Qual é o diretório corrente? Não tenho a menor idéia. Você pode tentar imprimir isto:

System.out.println (new File(".").getAbsolutePath());

para ver qual é o diretório corrente.