这是我的代码,它只删除第一个检查的文件。
我想删除所有已检查的文件,我需要进行哪些更改?
如何收集 CheckArr[i] 中的所有值?
该代码仅删除网格中第一个检查的文件。我想首先收集所有检查的值,然后进行数据库调用。
boolean CheckArr[];
File[] currentFiles;
unhide.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
for (int i = 0; i < CheckArr.length; i++) {
if (CheckArr[i] == true) {
db = new DataBase(getBaseContext());
try {
db.createDataBase();
} catch (IOException e1) {
e1.printStackTrace();
}
Cursor DataC = db
.selectQuery("SELECT path FROM Photos where name ='" +
currentFiles[i].getName() + "'");
if (DataC.getCount() > 0) {
Bitmap bitmap =
decodeFile.decodeFile(new File(root + "/" + currentFiles[i].getName()));
try {
FileOutputStream
outputStream = new FileOutputStream(
new File(DataC.getString(DataC
.getColumnIndex("path"))));
outputStream.write(decodeFile.getBitmapAsByteArray(bitmap));
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
File file = new File(root + "/" +
currentFiles[i].getName());
file.delete();
inflateListView(currentFiles);
}
DataC.close();
db.close();
}
}