列出Android设备中的所有pdf文件

时间:2011-06-30 02:23:22

标签: java android file

我正在尝试使用ListView列出存储在Android设备内部和外部内存中的所有PDF文件。但是,我现在不知道,我能想到的唯一方法是检查文件扩展名。那么请你给我一个提示或建议?我非常感谢你的帮助。

2 个答案:

答案 0 :(得分:2)

即使这个问题来自2011年,但该主题仍然有意义,这里没有适当的答案。

因此,以下这段代码应可在当今的Android设备上使用:

String selection = "_data LIKE '%.pdf'"
try (Cursor cursor = getApplicationContext().getContentResolver().query(MediaStore.Files.getContentUri("external"), null, selection, null, "_id DESC")) {
    if (cursor== null || cursor.getCount() <= 0 || !cursor.moveToFirst()) {
        // this means error, or simply no results found
        return;
    }
    do {
        // your logic goes here
    } while (cursor.moveToNext());
}

答案 1 :(得分:1)

这可能就是您要找的内容:MediaStore.Files

  

包含的媒体提供者表   媒体中所有文件的索引   存储,包括非媒体文件。   这应该由应用程序使用   适用于非媒体文件类型   (文字,HTML, PDF 等)以及   需要使用的应用程序   单个多媒体文件类型   查询。