web-dev-qa-db-fra.com

Comment fournir un chemin de fichier sous Mac OS X lors de la création d'un fichier en Java?

File f = new File("C:\\Temp\\Example.txt");
f.createNewFile();

Lors de l'exécution, un nouveau fichier nommé "Example.txt" sera créé dans le dossier Temp. Comment fournir le chemin du fichier sous Mac OS X?

J'ai essayé de fournir:

File f = new File("\\Users\\pavankumar\\Desktop\\Testing\\Java.txt");
f.createNewFile();

Mais ça n'a pas marché pour moi.

12
Pavan Kumar

La barre oblique "/" doit être utilisée pour obtenir le chemin du fichier ici. Utilisation:

File f = new File("/Users/pavankumar/Desktop/Testing/Java.txt");
f.createNewFile();
16
Akash Rajbanshi

Veuillez utiliser File.separator pour être indépendant du système d'exploitation:

String home = System.getProperty("user.home");
File f = new File(home + File.separator + "Desktop" + File.separator + "Testing" + File.separator + "Java.txt");

Ou utilisez org.Apache.commons.io.FilenameUtils.normalize:

File f = new File(FileNameUtils.normalize(home + "/Desktop/Testing/Java.txt"));

L'un ou l'autre peut être utilisé (la deuxième option nécessite une bibliothèque)

9
Spindizzy

Il y a un File.separator constante dépendante du système que vous devez utiliser pour fournir une certaine portabilité à votre code Java.

Sous Linux, Mac OS X et autres versions * nix, le séparateur de dossier est / ne pas \, donc pas besoin d'échapper à quoi que ce soit, some/path/of/folders.

Vous pouvez également utiliser le /tmp dossier pour vos fichiers temporaires.

Enfin, sur les systèmes * nix, le répertoire personnel est généralement représenté par ~ ou se trouve dans la variable d'environnement HOME.

1
achedeuzot