web-dev-qa-db-fra.com

échappement de la barre oblique inverse dans Java string literal

J'utilise Java pendant un certain temps et je rencontre ce problème: j'utilise des chemins codés en dur dans des fenêtres comme

"D:\Java-code\JavaProjects\workspace\eypros\src"

Le problème est que j'ai besoin d'échapper au caractère barre oblique inverse pour l'utiliser avec de la chaîne. J'échappe donc manuellement chaque barre oblique inverse:

"D:\\Java-code\\JavaProjects\\workspace\\eypros\\src"

Existe-t-il un moyen de prendre automatiquement le chemin non échappé et de renvoyer une chaîne d'échappement Java.

Je pense que peut-être un autre conteneur en plus de Java pourrait faire l'affaire (mais je n'en connais pas).

Aucune suggestion?

8
Eypros
public static String escapePath(String path)
{
    return path.replace("\\", "\\\\");
}

Le \ Est doublé car il doit également être échappé dans ces chaînes.

Quoi qu'il en soit, je pense que vous devriez utiliser System.getProperty("file.separator"); au lieu de \.

Java.io.File Propose également quelques méthodes utiles pour les chemins d'accès au système de fichiers.

16
Andrei