L JAVA
File - 파일과 디렉토리 접근(작업중)
보리남편 김 주부
2022. 5. 22. 14:33
시작 : 2022.05.13
File 객체란
File 객체는 실제로 파일 자체를 표현하는 것이 아니다. File 객체는 하드디스크에 존재하는 실제 파일이나 디렉토리가 아니고 그것에 대한 경로(pathname) 또는 참조(reference)를 추상화한 객체이다.
File 객체 생성
File mtDir = new File("C:/j2SDK 1.4.0/src/java/io");
=> C:/j2SDK 1.4.0/src/java/io 경로를 가지는 File객체이다.
하지만 원도우즈 운영체제에서도 동작을 윈한다면 구분자가 달라야 한다.
File mtDir = new File("C:\\j2SDK 1.4.0\\src\\java\\io");
File 객체는 유효한 경로를 판단하지 않기에 주의가 필요하다.
File myFile = new File("C:/j2SDK 1.4.0/src/java/io", "File.java");
//위 코드와 같은 코드이지만 아래 코드는 mtDir File 객체에 유효성을 체크할 수 있기에 훨씬더 효율적인 코드이다.
File mtDir = new File("C:/j2SDK 1.4.0/src/java/io");
File myFile = new File(mtDir, "File.java");
경로에 대한 이식성 고려
File myFile = new File("C:" + File.separator + " jdk 1.4" + File.separator +
"src " + File.separator + "java" + File.separator +
"io" + "File.java");
String type 의 정적 변수 : File.separator
File.separator 는 사용 운영체제에 맞게 구분자로 표시되기에 이식성 효율이 좋다. 그럼 다음 문제점은 무엇인가?
눈치가 빠른분은 앞의 "C:" 가 윈도우 운영체제에 디렉토리 표시 규칙이기에 당장에는 상대 경로로 해결이 가능하지만.....
728x90
728x90