Como obter o diretório de trabalho atual em Java

Mohammad Irfan 12 outubro 2023
  1. Obter Diretório de trabalho atual utilizando System.getProperty() Método em Java
  2. Obter diretório de trabalho atual utilizando toAbsolutePath() em Java
  3. Obter o diretório de trabalho atual utilizando o método normalize() em Java
  4. Obter o diretório de trabalho atual utilizando FileSystems.getDefault() Método em Java
  5. Obter diretório de trabalho atual utilizando o getAbsoluteFile() metodo em Java
  6. Obter diretório de trabalho atual utilizando o método getClass() em Java
Como obter o diretório de trabalho atual em Java

Este tutorial apresenta como obter o diretório de trabalho atual e lista alguns exemplos de códigos para entendê-lo.

Há várias maneiras de obter o diretório de trabalho atual, aqui utilizamos System.getProperty(), toAbsolutePath(), e FileSystems.getDefault() método, etc. Vamos ver os exemplos.

Obter Diretório de trabalho atual utilizando System.getProperty() Método em Java

O método System.getProperty() é que retorna a propriedade do sistema indicada pela chave (argumento). Por exemplo, user.dir retorna o diretório do usuário e os.name retorna o nome do sistema operacional. Aqui, utilizamos este método para obter o diretório de trabalho do usuário atual. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    String directoryName = System.getProperty("user.dir");
    System.out.println("Current Working Directory is = " + directoryName);
  }
}

Resultado:

Current Working Directory is = D:\eclipse-workspace\corejavaexamples

Obter diretório de trabalho atual utilizando toAbsolutePath() em Java

O método toAbsolutePath() pode obter o caminho absoluto de qualquer local. Aqui, utilizamos este método para obter o caminho absoluto do diretório atual. Veja o exemplo abaixo.

import java.nio.file.Path;
import java.nio.file.Paths;

public class SimpleTesting {
  public static void main(String[] args) {
    Path path = Paths.get("");
    String directoryName = path.toAbsolutePath().toString();
    System.out.println("Current Working Directory is = " + directoryName);
  }
}

Resultado:

Current Working Directory is = D:\eclipse-workspace\corejavaexamples

Obter o diretório de trabalho atual utilizando o método normalize() em Java

O método normalize() devolve um caminho do caminho atual no qual todos os elementos redundantes do nome são eliminados. Utilizamos este método com o método toAbsolute() para obter o diretório de trabalho atual, eliminando os nomes redundantes. Veja o exemplo abaixo.

import java.nio.file.Path;
import java.nio.file.Paths;

public class SimpleTesting {
  public static void main(String[] args) {
    Path path = Paths.get("");
    String directoryName = path.toAbsolutePath().normalize().toString();
    System.out.println("Current Working Directory is = " + directoryName);
  }
}

Resultado:

Current Working Directory is = D:\eclipse-workspace\corejavaexamples

Obter o diretório de trabalho atual utilizando FileSystems.getDefault() Método em Java

Podemos utilizar o getDefault() método da classe FileSystem para obter o Filesystem padrão e depois o toAbsolutePath() método para obter o caminho absoluto do diretório de trabalho atual. Veja o exemplo abaixo.

import java.nio.file.FileSystems;
import java.nio.file.Path;

public class SimpleTesting {
  public static void main(String[] args) {
    Path path = FileSystems.getDefault().getPath("");
    String directoryName = path.toAbsolutePath().toString();
    System.out.println("Current Working Directory is = " + directoryName);
  }
}

Resultado:

Current Working Directory is = D:\eclipse-workspace\corejavaexamples

Obter diretório de trabalho atual utilizando o getAbsoluteFile() metodo em Java

Podemos utilizar o método getAbsoluteFile() para obter a localização do arquivo atual que realmente representa a localização do diretório atual. Veja o exemplo abaixo.

import java.io.File;

public class SimpleTesting {
  public static void main(String[] args) {
    File file = new File("");
    String directoryName = file.getAbsoluteFile().toString();
    System.out.println("Current Working Directory is = " + directoryName);
  }
}

Resultado:

Current Working Directory is = D:\eclipse-workspace\corejavaexamples

Obter diretório de trabalho atual utilizando o método getClass() em Java

Podemos utilizar o método getClass() da classe Object em Java que retorna a classe atualmente em execução, que pode ser utilizado com o método getPath() para obter o caminho do diretório de trabalho atual. Veja o exemplo abaixo.

public class SimpleTesting {
  String getCurrentDirectory() {
    return this.getClass().getClassLoader().getResource("").getPath();
  }

  public static void main(String[] args) {
    String directoryName = new SimpleTesting().getCurrentDirectory();
    System.out.println("Current Working Directory is = " + directoryName);
  }
}

Resultado:

Current Working Directory is = D:\eclipse-workspace\corejavaexamples

Artigo relacionado - Java File