1. 程式人生 > >數據庫查詢文件夾下的文件

數據庫查詢文件夾下的文件

storage long ted 路徑 move cep catch getcount 數據庫查詢

MediaProvider 操作。

1. 通過data查詢出某個路徑ID,然後查詢其Parent未此ID的所有文件。

{
Log.e("zcxpre","rowId = start !!!22222222!");
String where1 = MediaStore.Files.FileColumns._ID + ">?"+ " AND " + MediaStore.Files.FileColumns.DATA + "=?";
String[] selectionArgs1 = null;
selectionArgs1 = new String[] { "1","/storage/emulated/0/test" };
try {
Log.e("zcxpre","rowId = start !!!!");
c = mProvider.query(limitUri, FILES_PRESCAN_PROJECTION,
where1, selectionArgs1, MediaStore.Files.FileColumns._ID, null);
if (c == null) {
Log.e("zcxpre","c == null) ");
return;
}

int num = c.getCount();

if (num == 0) {
Log.e("zcxpre","num == 0");
return;
}
long rowId = -1;
while (c.moveToNext()) {

rowId = c.getLong(0);
}

Log.e("zcxpre","rowId = "+rowId);
} catch (Exception e) {

Log.e("zcxpre","rowId = Exectpoiton e "+e);
}
}

2.直接使用like查詢所有文件。
String where1 = MediaStore.Files.FileColumns._ID + ">?"+ " AND " + MediaStore.Files.FileColumns.DATA + " like ?";
String[] selectionArgs1 = null;
selectionArgs1 = new String[] { "1","/storage/emulated/0/tencent%" };

數據庫查詢文件夾下的文件