Dans la File
classe, il y a deux chaînes separator
et pathSeparator
.
Quelle est la différence? Quand devrais-je utiliser l'un sur l'autre?
java
file
path-separator
icnhzabot
la source
la source
Réponses:
Si vous voulez dire
File.separator
etFile.pathSeparator
ensuite:File.pathSeparator
est utilisé pour séparer les chemins de fichiers individuels dans une liste de chemins de fichiers. Considérez sous Windows, la variable d'environnement PATH. Vous utilisez un;
pour séparer les chemins d'accès aux fichiers de sorte que Windows leFile.pathSeparator
serait;
.File.separator
est soit/
ou\
qui est utilisé pour diviser le chemin vers un fichier spécifique. Par exemple sous Windows c'est\
ouC:\Documents\Test
la source
File.separator
devrait êtreFile.fileSeparator
relatif àFile.pathSeparator
File
. Je pense que la partie du fichier est implicite. Mais qui sait pourquoi ils ont fait beaucoup de ce qu'ils ont fait avec Java.Vous utilisez le séparateur lorsque vous créez un chemin de fichier. Donc, sous Unix, le séparateur est
/
. Donc, si vous vouliez construire le chemin Unix,/var/temp
vous le feriez comme ceci:Vous utilisez le
pathSeparator
lorsque vous traitez une liste de fichiers comme dans un chemin de classe. Par exemple, si votre application a pris une liste de pots comme argument, la façon standard de formater cette liste sous Unix est:/path/to/jar1.jar:/path/to/jar2.jar:/path/to/jar3.jar
Donc, étant donné une liste de fichiers, vous feriez quelque chose comme ceci:
la source
/var/temp
celui-ci, il est inutile de l'utiliserFile.separator
car vous avez déjà du code dépendant de la plate-forme. Pourrait aussi bien coder en dur le chemin.java.io.File
La classe contient quatre variables de séparateur statique. Pour une meilleure compréhension, comprenons à l'aide d'un codeNotez que toutes ces variables sont finales et dépendent du système.
Voici le programme java pour imprimer ces variables de séparation. FileSeparator.java
Sortie du programme ci-dessus sur le système Unix:
Sortie du programme sur le système Windows:
Pour rendre notre plate-forme de programme indépendante, nous devons toujours utiliser ces séparateurs pour créer un chemin de fichier ou lire des variables système comme PATH, CLASSPATH.
Voici l'extrait de code montrant comment utiliser correctement les séparateurs.
la source
String
etchar
retournés par les méthodes mentionnées ci-dessus renvoient la barre oblique inversée correctement formatée (si sous Windows).