В чем разница между использованием File.separator
и нормалью /
в Java Path-String?
В отличие от двойной обратной косой черты, \\
независимость от платформы, похоже, не является причиной, поскольку обе версии работают под Windows и 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));
}
}
Перефразируя вопрос, если /
работает на Unix и Windows, почему нужно когда-либо использовать File.separator
?