Les Propriétés Java, l'obtention de chemin d'accès au fichier
logpath = LoggerUtils.getProperties().getProperty("log.path");
System.out.println("logpath: " + logpath);
Le code ci-dessus retourne:
logpath: C:UsersMauriceDesktopLogs
Dans le fichier de propriétés est:
log.path C:\Users\Maurice\Desktop\Logs
Comment puis-je conserver le fichier séparateurs? Je veux que cela fonctionne sur Linux et pas Windows.
Vous devez vous connecter pour publier un commentaire.
En fait, vous devez mettre ceci dans le fichier de propriétés:
Voir ceci:
plus précisément le
load
méthode:Descendez un peu et vous verrez ce qu'entre autres choses:
Barre oblique inverse
\
est un caractère d'échappement qui est ignoré autrement./
) de tous les temps - ce fonctionne sur Windows, trop:log.path C:/Users/Maurice/Desktop/Logs
Dans un fichier de propriétés, vous devez soit utiliser des barres obliques:
Ou, échappé barres obliques inverses:
Vous avez besoin d'échapper les barres obliques, comme ils sont des caractères spéciaux. Voir: Java Propriétés de la barre oblique inverse
La Java les propriétés de format de fichier dicte que le caractère barre oblique inverse ("
\
") échappe les caractères qui le suivent, de sorte à obtenir un littéral de chemin d'accès windows, vous devez:Cependant, Java convertir le chemin des caractères de séparation pour vous automatiquement en fonction de la plate-forme d'exécution, de sorte que vous pouvez éviter ce problème en utilisant toujours des barres obliques:
Vous pouvez stocker la
Properties
de fichier première, puis de le charger à nouveau à utiliser.Properties
prendra soin de s'échapper/unescaping quoi que ce soit.