Ottieni la directory di lavoro corrente in Java

Mohammad Irfan 12 ottobre 2023
  1. Ottieni la directory di lavoro corrente utilizzando il metodo System.getProperty() in Java
  2. Ottieni la directory di lavoro corrente utilizzando toAbsolutePath() in Java
  3. Ottieni la directory di lavoro corrente utilizzando il metodo normalize() in Java
  4. Ottieni la directory di lavoro corrente utilizzando il metodo FileSystems.getDefault() in Java
  5. Ottieni la directory di lavoro corrente utilizzando il metodo getAbsoluteFile() in Java
  6. Ottieni la directory di lavoro corrente utilizzando il metodo getClass() in Java
Ottieni la directory di lavoro corrente in Java

Questo tutorial introduce come ottenere la directory di lavoro corrente ed elenca alcuni codici di esempio per comprenderla.

Ci sono diversi modi per ottenere la directory di lavoro corrente, qui usiamo il metodo System.getProperty(), toAbsolutePath() e FileSystems.getDefault(), ecc. Vediamo gli esempi.

Ottieni la directory di lavoro corrente utilizzando il metodo System.getProperty() in Java

Il metodo System.getProperty() è che restituisce la proprietà di sistema indicata dalla chiave (argomento). Ad esempio, user.dir restituisce la directory dell’utente e os.name restituisce il nome del sistema operativo. Qui, usiamo questo metodo per ottenere la directory di lavoro dell’utente corrente. Vedi l’esempio sotto.

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

Produzione:

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

Ottieni la directory di lavoro corrente utilizzando toAbsolutePath() in Java

Il metodo toAbsolutePath() può ottenere il percorso assoluto di qualsiasi posizione. Qui, usiamo questo metodo per ottenere il percorso assoluto della directory corrente. Vedi l’esempio sotto.

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);
  }
}

Produzione:

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

Ottieni la directory di lavoro corrente utilizzando il metodo normalize() in Java

Il metodo normalize() restituisce un percorso dal percorso corrente in cui vengono eliminati tutti gli elementi del nome ridondanti. Usiamo questo metodo con il metodo toAbsolute() per ottenere la directory di lavoro corrente eliminando i nomi ridondanti. Vedi l’esempio sotto.

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);
  }
}

Produzione:

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

Ottieni la directory di lavoro corrente utilizzando il metodo FileSystems.getDefault() in Java

Possiamo usare il metodo getDefault() della classe FileSystem per ottenere il Filesystem predefinito e quindi il metodo toAbsolutePath() per ottenere il percorso assoluto della directory di lavoro corrente. Vedi l’esempio sotto.

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);
  }
}

Produzione:

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

Ottieni la directory di lavoro corrente utilizzando il metodo getAbsoluteFile() in Java

Possiamo usare il metodo getAbsoluteFile() per ottenere la posizione del file corrente che rappresenta effettivamente la posizione della directory corrente. Vedi l’esempio sotto.

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);
  }
}

Produzione:

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

Ottieni la directory di lavoro corrente utilizzando il metodo getClass() in Java

Possiamo usare il metodo getClass() della classe Object in Java che restituisce la classe attualmente in esecuzione, che può essere ulteriormente utilizzata con il metodo getPath() per ottenere il percorso della directory di lavoro corrente. Vedi l’esempio sotto.

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);
  }
}

Produzione:

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

Articolo correlato - Java File