자바 File 류 의 간단 한 사용 튜 토리 얼(생 성,삭제,옮 겨 다 니 기,존재 여부 판단 등)
자바 파일 클래스 는 파일 이름과 디 렉 터 리 경로 이름 을 추상 적 으로 대표 합 니 다.이 클래스 자 체 는 데 이 터 를 읽 거나 쓸 수 없습니다.디스크 에 있 는 파일 과 디 렉 터 리 의 생 성,파일 찾기,파일 삭제 에 사 용 됩 니 다.파일 이 존재 하 는 지,읽 고 쓸 수 있 는 지,파일 디 렉 터 리 를 옮 겨 다 니 는 지 등 읽 기 전용 작업 을 합 니 다.데 이 터 를 읽 고 쓰 려 면 다른 io 흐름 과 함께 사용 해 야 합 니 다.예 를 들 어 FileInputStream,FileOutputStream 등 입 니 다.File 대상 은 디스크 에 실제 존재 하 는 파일 과 디 렉 터 리 를 대표 합 니 다.다음은 간단 한 열 을 통 해 File 의 기본 사용 을 소개 합 니 다.
이것 은 전체 File 에서 간단하게 사용 하 는 코드 입 니 다.
1 package com.tianjh;
2
3 import java.io.File;
4 import java.io.IOException;
5
6 /**
7 * Created on 2020/12/10
8 * File
9 *
10 */
11 public class FileDemo {
12 public static void main(String[] args) {
13 String dirname = "D:/Demo";
14 // File
15 File f1 = new File(dirname);
16
17 // 1.
18 // f1
19 if (f1.isDirectory()) {
20 System.out.println("Directory of " + dirname);
21 String[] s = f1.list();
22 // s ,
23 for (int i = 0; i < s.length; i++) {
24 File f = new File(dirname + "/" + s[i]);
25 if (f.isDirectory()) {
26 System.out.println(s[i] + " is a directory");
27 } else {
28 System.out.println(s[i] + " is a file");
29 }
30 }
31 } else {
32 //
33 System.out.println(dirname + " is not a directory");
34 }
35 // expected output:
36 // Directory of D:/Demo
37 // BufferedInputStream.java is a file
38 // BufferedOutputStream.java is a file
39 // childFile is a directory
40
41 /*
42 * 2.
43 *
44 * true: ,
45 */
46 System.out.println(dirname + " allowed to execute? " + f1.canExecute());
47 // expected output: D:/Demo allowed to execute? true
48
49
50 /*
51 * 3.
52 *
53 * true: ;
54 * false: true
55 */
56 System.out.println(dirname + " allowed to read? " + f1.canRead());
57 // expected output: D:/Demo allowed to read? true
58
59 /*
60 * 4.
61 *
62 * true: ;
63 * false: true
64 */
65 System.out.println(dirname + " allowed to write? " + f1.canWrite());
66 // expected output: D:/Demo allowed to write? true
67
68 /*
69 * 5.
70 * , ,
71 *
72 */
73 String s1 = "C:/Boot";
74 // “D:/Demo” "C:/Boot"
75 System.out.println(f1.compareTo(new File(s1)));
76 // expected output: 1
77 String s2 = "D:/Deoo";
78 // “D:/Demo” "D:/Deoo"
79 System.out.println(f1.compareTo(new File(s2)));
80 // expected output: -2
81
82
83 /*
84 * 6.
85 * ,
86 * true: ;
87 * false:
88 */
89 File f3 = new File("/Boot");
90 try {
91 System.out.println("/Boot file is created? " + f3.createNewFile());
92 // expected output: /Boot file is created? false
93 } catch (IOException e) {
94 e.printStackTrace();
95 }
96
97 /*
98 * 7.
99 *
100 */
101 String dirnames = "D:/tmp/boot";
102 File f4 = new File(dirnames);
103 // , true, false。
104 // File , , 。
105 System.out.println("create mkdir is " + f4.mkdir());
106 // expected output: create mkdir is true
107
108
109 /*
110 * 8. ,
111 * File
112 */
113 System.out.println("create mkdirs is " + f4.mkdirs());
114 // expected output: create mkdirs is false
115
116
117 /*
118 * 9.
119 *
120 * true ; false
121 */
122 System.out.println(dirnames + " deleted is " + f4.delete());
123 // expected output: D:/tmp/boot deleted is true
124
125
126 /*
127 * 10.
128 *
129 */
130 System.out.println("getName is " + f1.getName());
131 // expected output: getName is Demo
132
133
134 /*
135 * 11.
136 *
137 */
138 System.out.println("getPath is " + f1.getPath());
139 // expected output: getPath is D:\Demo
140
141 /*
142 * 12.
143 *
144 */
145 System.out.println("Absolute Path is " + f1.getAbsolutePath());
146 // expected output: Absolute Path is D:\Demo
147
148
149 /*
150 * 13.
151 *
152 * true: ;
153 * false: true
154 */
155 System.out.println(f1.exists() ? "exist" : "not");
156 // expected output: exist
157 }
158
159 }
FileDemo.Java
다음은 자주 사용 하 는 몇 가지 방법 을 소개 한다.1.지정 한 디 렉 터 리 아래 에 있 는 모든 파일 을 옮 겨 다 니 기("D:/Demo"의 모든 파일 과 디 렉 터 리 를 옮 겨 다 니 기)
D 디스크 의 데모 디 렉 터 리 결 과 는 다음 과 같 습 니 다.
예제 코드:
String dirname = "D:/Demo";
// File
File f1 = new File(dirname);
// 1.
// f1
if (f1.isDirectory()) {
System.out.println("Directory of " + dirname);
String[] s = f1.list();
// s ,
for (int i = 0; i < s.length; i++) {
File f = new File(dirname + "/" + s[i]);
if (f.isDirectory()) {
System.out.println(s[i] + " is a directory");
} else {
System.out.println(s[i] + " is a file");
}
}
} else {
//
System.out.println(dirname + " is not a directory");
}
// expected output:
// Directory of D:/Demo
// BufferedInputStream.java is a file
// BufferedOutputStream.java is a file
// childFile is a directory
출력 결과:2.지정 한 파일 의 실행 여 부 를 테스트 합 니 다.
/*
* 2.
*
* true: ,
*/
System.out.println(dirname + " allowed to execute? " + f1.canExecute());
// expected output: D:/Demo allowed to execute? true
3.지정 한 파일 을 읽 을 수 있 는 지 테스트 합 니 다.
/*
* 3.
*
* true: ;
* false: true
*/
System.out.println(dirname + " allowed to read? " + f1.canRead());
// expected output: D:/Demo allowed to read? true
4.지정 한 파일 을 쓸 수 있 는 지 테스트 합 니 다.
/*
* 4.
*
* true: ;
* false: true
*/
System.out.println(dirname + " allowed to write? " + f1.canWrite());
// expected output: D:/Demo allowed to write? true
샘플 2,3,4 의 결 과 는 데모 의 속성 을 참고 할 수 있 습 니 다.5.추상 적 인 경로 명 과 파라미터 추상 적 인 경로 명 이 일치 하 는 지,사전 순서에 따라 비교
/*
* 5.
* , ,
*
*/
String s1 = "C:/Boot";
// “D:/Demo” "C:/Boot"
System.out.println(f1.compareTo(new File(s1)));
// expected output: 1
String s2 = "D:/Deoo";
// “D:/Demo” "D:/Deoo"
System.out.println(f1.compareTo(new File(s2)));
// expected output: -2
결과:6.새 파일 만 들 기
/*
* 6.
* ,
* true: ;
* false:
*/
File f3 = new File("/Boot");
try {
System.out.println("/Boot file is created? " + f3.createNewFile());
// expected output: /Boot file is created? false
} catch (IOException e) {
e.printStackTrace();
}
결과:7.디 렉 터 리 만 들 기
/*
* 7.
*
*/
String dirnames = "D:/tmp/boot";
File f4 = new File(dirnames);
// , true, false。
// File , , 。
System.out.println("create mkdir is " + f4.mkdir());
// expected output: create mkdir is true
결과:8.존재 하지 않 는 부모 디 렉 터 리 를 포함 하여 디 렉 터 리 를 만 듭 니 다.위 열 에 해당 하 는 디 렉 터 리 파일 을 만 들 었 기 때문에 모든 mkdirs 가 만 들 면 false 를 반환 합 니 다.
/*
* 8. ,
* File
*/
System.out.println("create mkdirs is " + f4.mkdirs());
// expected output: create mkdirs is false
9.파일 이나 디 렉 터 리 삭제(앞에서 만 든/tmp 경로 의 boot 삭제)
/*
* 9.
*
* true ; false
*/
System.out.println(dirnames + " deleted is " + f4.delete());
// expected output: D:/tmp/boot deleted is true
결과:10.추상 적 인 경로 의 이름 가 져 오기
/*
* 10.
*
*/
System.out.println("getName is " + f1.getName());
// expected output: getName is Demo
결과:11.추상 적 인 경 로 를 가 져 오 는 문자열
/*
* 11.
*
*/
System.out.println("getPath is " + f1.getPath());
// expected output: getPath is D:\Demo
결과:12.추상 적 인 경 로 를 얻 는 절대적 인 경로
/*
* 12.
*
*/
System.out.println("Absolute Path is " + f1.getAbsolutePath());
// expected output: Absolute Path is D:\Demo
결과:13.추상 적 인 경로 에서 지정 한 파일 이나 디 렉 터 리 가 존재 하 는 지 판단 합 니 다.
/*
* 13.
*
* true: ;
* false: true
*/
System.out.println(f1.exists() ? "exist" : "not");
// expected output: exist
결과:자바 File 류 의 간단 한 사용(생 성,삭제,옮 겨 다 니 기,존재 여부 판단 등)에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 자바 File 류 의 간단 한 사용 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 을 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.