안드로이드 파일이나 폴더의 알려진 경로를 삭제

재판 : HTTPS : //blog.csdn.net/qq_31939617/article/details/89414714
[기능]
삭제 (문자열 delFile) : 파일이나 폴더를 삭제

deleteSingleFile은 (문자열적인 filePath $ 이름) : 하나의 파일을 삭제

deleteDirectory (문자열적인 filePath) : 폴더와 그 내용을 삭제

[설명]
1, 삭제 방법 deleteSingleFile deleteDirectory 수단 및 방법을 호출;

2 deleteDirectory 방법 deleteSingleFile 메소드를 호출;

삭제 방법을 사용하는 경우 3, 세 가지 방법을 함께 사용할 수 있으며, 방법은 단독 deleteSingleFile deleteDirectory 방법을 사용할 수있다.

DeleteUtil.class

수입 android.util.Log;
수입 android.widget.Toast;

수입 java.io.File에;

공용 클래스 DeleteUtil {

/ ** 삭제 파일, 파일 또는 폴더가 될 수 있습니다
당신은 폴더 또는 파일 이름을 삭제할 delFile * @param
, 그렇지 않은 경우는 false * @return이 성공적으로 true를 반환 삭제 된
* /
공공 부울 삭제 (문자열 delfile) {
파일 파일 = 새로운 새로운 파일 (delfile)
(! File.Exists이 ()) {IF
Toast.makeText (MyApplication.getContext (), "파일 삭제에 실패했습니다 :"+는 delFile +! "존재하지 않는", Toast.LENGTH_SHORT) .Show ();
반환 거짓 ;
} {다른
IF ((듯이), file.isFile ())
반환 deleteSingleFile (delfile)
다른
되돌 deleteDirectory (delfile);
}
}

/ ** 하나의 파일 삭제
* @param적인 filePath $ 이름 파일 이름을 삭제할 파일
, * 하나의 파일이 성공적으로 true를 반환 삭제 된 @return를, 그렇지 않은 경우는 false
* /
개인 부울 deleteSingleFile (문자열적인 filePath $ 이름) {
파일 파일 = 새로운 새로운 파일 ( 이름 $적인 filePath는)
파일 경로에 해당하는 파일이 존재하고 파일 인 경우 // 삭제
IF (File.Exists () && (듯이), file.isFile ()) {
IF (File.delete를 ()) {
로그를. E ( "- Method--", " : Copy_Delete.deleteSingleFile는 +적인 filePath $ 이름 +"성공! "하나의 파일을 삭제");
true로 반환;
}는 다른 {
Toast.makeText (MyApplication.getContext를 (), "하나의 파일을 삭제 ! "+적인 filePath $ 이름 +"실패 ", Toast.LENGTH_SHORT)를 .Show ();
false로 반환;
}
}는 다른 {
Toast.makeText (MyApplication.getContext (),"하나의 파일을 삭제 실패 : "+적인 filePath $ 이름 +" 그것은 존재하지 않습니다! "Toast.LENGTH_SHORT))은 (.show;
false를 반환;
}
}

/ ** 디렉토리 및 디렉토리에 삭제 파일
디렉터리 삭제하고자하는 파일 경로 * @param 파일 경로
를 성공적으로 true를 돌려 삭제 된 * @return 디렉토리를, 그렇지 않은 경우는 false
* /
개인 부울 deleteDirectory (문자열적인 filePath) {
//하지 않을 경우 파일 디렉토리에 세퍼레이터의 끝 파일 자동 구분자 첨가
IF (! filePath.endsWith합니다 (Win32 시스템))
;적인 filePath = +적인 filePath Win32 시스템
, 파일 = dirFile 새로운 새 파일 (여기서 filePath)
DIR 대응하는 파일이 존재하지 않는 // 경우 아닌지 디렉토리는 다음 종료
((|| ()) dirFile.isDirectory을 (dirFile.exists ())!!) IF를 {
Toast.makeText (MyApplication.getContext (), "삭제 디렉토리 실패 :"+적인 filePath + "존재하지 않습니다! ", Toast.LENGTH_SHORT) .Show ();
반환는 false;
}
true로 부울 = 깃발,
모든 파일 삭제 폴더는 하위 디렉토리를 포함 //
파일 [] = dirFile.listFiles 파일 ();
(파일 파일을 : 파일) {
// 삭제 하위 폴더
IF ((듯이), File.isFile ()) {
에서 깃발 = deleteSingleFile (file.getAbsolutePath ());
IF (에 신고!)
BREAK;
}
하위 디렉토리 삭제 //
다른 IF (file.isDirectory ()) {
에서 플래그 = deleteDirectory (파일
.getAbsolutePath ());
IF (!에서 깃발)
BREAK는;
}
}
! (에서 플래그) {경우
Toast.makeText은 (MyApplication.getContext (), "삭제 디렉토리는 실패!", Toast.LENGTH_SHORT)를 .Show ();
false로 반환;
}
/ / 현재 디렉토리를 삭제
IF (dirFile.delete ()) {
Log.e ( "- Method--", "Copy_Delete.deleteDirectory : 디렉토리 삭제"+적인 filePath + "성공!");
true로 반환;
}는 다른 {
토스트. makeText (MyApplication.getContext (), "디렉토리 삭제 :"! "실패"+적인 filePath +, Toast.LENGTH_SHORT을).보여 주다();
false를 반환;
}
}

}

추천

출처www.cnblogs.com/la66/p/11948884.html