장면 : 다른 폴더로 폴더에있는 모든 파일을 복사
코드 :
패키지 cn.lj.java; 수입 java.io.BufferedReader의; 수입 java.io.BufferedWriter; 수입 java.io.File에; 수입 java.io.FileOutputStream의; 수입 java.io.FileReader; 수입 때 java.io.IOException; 수입 java.io.OutputStreamWriter; 수입 java.io.Writer에; 공공 클래스 FlowLogUpLoad { // 文件夹的拷贝 공공 정적 무효 copyDir (문자열 sourcePathDir, 문자열 newPathDir) { 파일의 시작 = 새로운 파일 (sourcePathDir); 파일 끝은 = 새파일 (newPathDir); 문자열 []적인 filePath = start.list (); //이 의 폴더 아래에있는 모든 파일 및 디렉토리의 이름을 얻을 IF (! End.exists ()) { end.mkdir를 (); } 부울 깃발 = 거짓 ; 에 대한 (임시 문자열 :적인 filePath) { // 의 상황에 맞게 추가 조건 IF ( 새 새 . 파일 (sourcePathDir + + Win32 시스템 임시을) .isFile () && temp.endsWith ( "DAT" )) { // 파일 카피 플래그 = CopyFile 수 (sourcePathDir Win32 시스템 + + TEMP는 Win32 시스템 newPathDir +가 +에서 TEMP) } IF (인 플래그) { 에서 System.out.println ( "파일 :"+ 임시 + ", 복사 성공!" ); } 다른 { 에서 System.out.println ( "파일 :"+ 임시 + "!, 복사 실패" ); } } } // 문서의 복사 공공의 정적 부울 CopyFile 수 (소스 패스 문자열, 문자열 newpath를) { 부울 플래그 = false로 , 파일에서 ReadFile = 새 새 파일 (소스 패스) NewFile 파일 = 새로운 새로운 파일 (newpath를) BufferedWriter로, BufferedWriter로 = 널 (null) ; 작가 작가 = 널 (null) ; FileOutputStream에의 FileOutputStream = 널 ; BufferedReader로의 BufferedReader = 널 ; 시도 { 의 FileOutputStream은 = 새 (이를 새, FileOutputStream에 사실을 ); 작가는 = 새 의 OutputStreamWriter (FileOutputStream에, "UTF-8" ); BufferedWriter로는 = 새로운 BufferedWriter의 (작가); BufferedReader로는 = 새로운 BufferedReader로 ( 새를을 FileReader (ReadFile을)); 문자열 라인 = 널 (null) ; 반면 ((라인 bufferedReader.readLine = ())! = null의 ) { bufferedWriter.write (행); () bufferedWriter.newLine; () bufferedWriter.flush; } 플래그 = 진정한 ; } 캐치 (IOException이 전자) { 플래그 = 거짓 ; e.printStackTrace (); } 마지막으로 { 시도 { 경우(! = BufferedWriter의 널 ) { bufferedWriter.close (); } 경우 (BufferedReader로! = null의 ) { bufferedReader.close (); } 경우 (작가! = null이 ) { writer.close (); } 경우 (FileOutputStream에! = null의 ) { fileOutputStream.close (); } } 캐치 (IOException이 전자) { e.printStackTrace (); } } 반환 플래그를; } 공공 정적 무효 메인 (문자열 []에 args) { 문자열 SOURCEPATH = "D : \\ 20,200,120 전에 홈 \\ \\" ; 문자열 newpath를 = "E : \\ 20,200,120 후 \\ 집 \\" ; (System.out.print "에서"+ 원본 경로); System.out.print ( "받는 사람 :"+ newpath를); copyDir (SOURCEPATH, newpath가); } }