자바 File 류 의 간단 한 사용 튜 토리 얼(생 성,삭제,옮 겨 다 니 기,존재 여부 판단 등)

12061 단어 자바파일 클래스
머리말
자바 파일 클래스 는 파일 이름과 디 렉 터 리 경로 이름 을 추상 적 으로 대표 합 니 다.이 클래스 자 체 는 데 이 터 를 읽 거나 쓸 수 없습니다.디스크 에 있 는 파일 과 디 렉 터 리 의 생 성,파일 찾기,파일 삭제 에 사 용 됩 니 다.파일 이 존재 하 는 지,읽 고 쓸 수 있 는 지,파일 디 렉 터 리 를 옮 겨 다 니 는 지 등 읽 기 전용 작업 을 합 니 다.데 이 터 를 읽 고 쓰 려 면 다른 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 류 의 간단 한 사용 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 을 바 랍 니 다!

좋은 웹페이지 즐겨찾기