본문 바로가기
Study/Java

Java - File 구분자 (File Separator)

by 오늘만 사는 여자 2022. 6. 30.
728x90
반응형

다음과 같이 OS마다 파일 패스에서 사용하는 파일 구분자가 다릅니다. Windows에서는 \를 구분자로 사용하지만 Linux는 /를 구분자로 사용합니다.

Windows : "C:\Windows\System32\drivers\e"

Linux : "/home/account/Desktop"

이런 구분자를 사용하면, 2개 이상의 OS에서 동작하는 프로그램의 경우 문제가 될 수 있습니다.

 

프로그램이 실행되는 OS에 맞는 Separator를 동적으로 가져와 사용하도록 구현이 되어야 합니다.

File.separator

File.separator는 프로그램이 실행 중인 OS에 해당하는 구분자를 리턴합니다.

File file = new File("/tmp/" + File.separator + "text.txt");

System.out.println(file.toPath());

Output:

/tmp/text.txt

System.getProperty("file.separator")

System.getProperty("file.separator")는 프로그램이 실행 중인 OS에 해당하는 구분자를 리턴합니다.

String separator = System.getProperty("file.separator");

File file = new File("/tmp/" + separator + "text.txt");

System.out.println(file.toPath());

Output:

/tmp/text.txt

출처 : https://codechacha.com/ko/java-file-separator/

728x90
반응형

댓글