private void showFileChooser() { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("/"); intent.addCategory(Intent.CATEGORY_OPENABLE);
try {
startActivityForResult(
Intent.createChooser(intent, "选择一个Excel文件"),
READ_REQUEST_CODE);
} catch (android.content.ActivityNotFoundException ex) {
// 如果没有可用的文件管理器,显示错误消息
Toast.makeText(this, "请安装文件管理器", Toast.LENGTH_SHORT).show();
}
}
if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK) { Uri uri = null; if (data != null) { uri = data.getData(); try { String mimeType = getContentResolver().getType(uri); if (mimeType.equals("application/vnd.ms-excel")) { // 读取Excel文件 readExcelFile(uri); } else { Toast.makeText(this, "请选择一个Excel文件", Toast.LENGTH_LONG).show(); } } catch (Exception e) { Log.e("Read Excel", "File select error", e); } } }
这样,当用户选择一个不是Excel文件时,您将看到“请选择一个Excel文件”的消息。