Java Android ファイル名で判別して、データを削除(実装版)2021

/**
* log ディレクト が 存在している かつ 、ファイルがあって、ファイル名が TN- から始まっていたら、
* 全削除する。
*/
private void File_Del() {

//************************** ファルダ 作成 **************************
String path = getApplicationContext().getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS).getPath() + "/log/";
String r_path = getApplicationContext().getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS).getPath();



//************************* フォルダ リネーム用 **********************
//Calendarクラスのオブジェクトを生成する
Calendar cl = Calendar.getInstance();
// SimpleDateFormatクラスを使用して、パターンを設定する
SimpleDateFormat sdf = new SimpleDateFormat("yyyy_MM_dd" + "_" + "HHmmss");
csv_date_01 = sdf.format(cl.getTime());

String re_name_path = getApplicationContext().getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS).getPath() +
"/" + csv_date_01 + "_log/";

File log_f = new File(path);
File root = new File(r_path);

//*** リネーム用
File re_nama_d = new File(re_name_path);

//listFilesメソッドを使用して一覧を取得する
File[] list_File = root.listFiles();

File[] list_File_log = log_f.listFiles();

// /log/ ファイルの中を取得
File[] list_log = log_f.listFiles();

System.out.println("ファイル & ディレクトリ数 if文前" + list_File.length);

//***** ディレクトリを取得
String dirname = log_f.getParent() + "/log/";

for(int i = 0; i < list_File.length; i++) {

if (list_File[i].isFile()) {

System.out.println("ファイル" + list_File[i]);
System.out.println("ファイル名" + list_File[i].getName());

//*** ファイル名チェック TN-
if (list_File[i].getName().contains("TN-")) {
System.out.println("ファイルあり" + list_File[i].getName());

file_flg = 0;

break;

} else {

//*** 削除 フラグ on
file_flg = 1;
System.out.println("削除フラグ on" + String.valueOf(file_flg));

}

} else {
//*** 削除 フラグ on
file_flg = 1;
System.out.println("削除フラグ on" + String.valueOf(file_flg));
}
} // ************** end loop ***********

System.out.println("if 文前 削除フラグ on" + String.valueOf(file_flg));

if(log_f.exists() && file_flg == 1 && dirname.contains("log")) {

System.out.println("ファイル & ディレクトリ数" + list_File.length);

//****** データ 全件 削除 ******
DBAdapter dbAdapter = new DBAdapter(getApplicationContext());
dbAdapter.openDB();

dbAdapter.allDelete(); // 全件 削除 クラスメソッド

dbAdapter.closeDB(); //------- DB を閉じる

System.out.println("ファイルなし 全削除");

//*************** /log/ フォルダを リネーム *****************
if (log_f.renameTo(re_nama_d)) {
//正常に名前が変更された場合
System.out.println("名前変更成功" + re_nama_d.getName());
}

} else {

System.out.println("ファイル & ディレクトリ数 return" + list_File.length);

return;

} //************ END if


} //*********** END function