Como obter o diretório de trabalho atual em Java?
Olá a todos! Estou começando a aprender Java e me deparei com um problema: preciso saber em qual pasta meu programa está localizado para ler um arquivo de configuração. Suponha que eu tenha o seguinte código:
import java.io.File;
public class Main {
public static void main(String[] args) {
File config = new File("config.txt");
if (config.exists()) {
System.out.println("Arquivo encontrado!");
} else {
System.out.println("Arquivo não encontrado. Onde estou?");
}
}
}
O problema é que esse código só funciona se eu executar o programa a partir da mesma pasta onde está o config.txt. Se eu executar de outro diretório, o arquivo não é encontrado. Como obter em Java o caminho absoluto para a pasta de trabalho atual, para que eu possa construir o caminho completo para o arquivo? Ouvi falar sobre System.getProperty("user.dir"), mas não tenho certeza se é o correto.
Por favor, me digam como fazer isso de forma confiável, para que o programa funcione independentemente do diretório de onde é executado.