Quelle est la différence entre l'utilisation File.separator
et une normale /
dans une chaîne de chemin Java?
Contrairement à l' \\
indépendance de la plate-forme à double barre oblique inverse ne semble pas être la raison, car les deux versions fonctionnent sous Windows et Unix.
public class SlashTest {
@Test
public void slash() throws Exception {
File file = new File("src/trials/SlashTest.java");
assertThat(file.exists(), is(true));
}
@Test
public void separator() throws Exception {
File file = new File("src" + File.separator + "trials" + File.separator + "SlashTest.java");
assertThat(file.exists(), is(true));
}
}
Pour reformuler la question, si cela /
fonctionne sous Unix et Windows, pourquoi devrait-on jamais vouloir l'utiliser File.separator
?