File.Separator vs FileSystem.getSeparator() vs System.getProperty("file.separator")?
플랫폼에 의존하는 "파일 분리기" 플랫폼을 독립적으로 얻는 방법은 세 가지가 있는 것 같습니다.
어떤 것을 언제 사용할지 어떻게 결정하나요?
그들 사이에 어떤 차이라도 있나요?
System.getProperties()
에의 콜에 의해서 덮어쓸 수 있다.System.setProperty(String key, String value)
또는 명령줄 매개 변수를 사용하여-Dfile.separator=/
File.separator
기본 파일 시스템의 구분 기호를 가져옵니다.
FileSystems.getDefault()
기본 파일 시스템을 가져옵니다.
FileSystem.getSeparator()
파일 시스템의 구분 문자를 가져옵니다.하나의 JVM에 있는 여러 파일 시스템에서 작동하기 위해 코드가 필요한 경우 인스턴스 방식으로 이 방법을 사용하여 기본값 이외의 다른 파일 시스템을 코드에 전달할 수 있습니다.
코드가 파일 시스템의 경계를 넘지 않는 경우(즉, 하나의 파일 시스템으로만 작업하는 경우)에는java.io.File.separator
.
이렇게 하면 설명한 바와 같이 FS의 기본 구분 기호가 나타납니다.Bringer128이 설명했듯이System.getProperty("file.separator")
명령줄 옵션을 통해 재정의할 수 있으며 타입이 안전하지 않습니다.java.io.File.separator
.
마지막은java.nio.file.FileSystems.getDefault().getSeparator();
Java 7에서 도입되었으므로 코드를 이전 Java 버전 간에 이식할 수 있도록 하려면 일단 무시하는 것이 좋습니다.
이 모든 옵션은 다른 옵션과 거의 동일하지만 완전히 동일하지는 않습니다.당신의 필요에 맞는 것을 고르세요.
언급URL : https://stackoverflow.com/questions/8075373/file-separator-vs-filesystem-getseparator-vs-system-getpropertyfile-separato
'programing' 카테고리의 다른 글
(Python의 Mock 프레임워크를 사용하여)에서 사용되는 오픈을 어떻게 모킹합니까? (0) | 2022.11.18 |
---|---|
PHP에서 정수를 문자열로 변환 (0) | 2022.11.18 |
부하가 높은 사이트에서 PHP를 사용하기 위한 전술 (0) | 2022.11.18 |
휴지 상태 1:1 양방향 매핑 실패 - 무효화된 엔티티 필드 (0) | 2022.11.18 |
도커 컨테이너로 실행 중인 MariaDB 업그레이드 방법 (0) | 2022.11.18 |