Как получить расширение файла, выбранного с помощью Intent.ACTION_OPEN_DOCUMENT?Android

Форум для тех, кто программирует под Android
Anonymous
Как получить расширение файла, выбранного с помощью Intent.ACTION_OPEN_DOCUMENT?

Сообщение Anonymous »


Я хочу получить расширение файла, который я выбрал с помощью Intent.ACTION_OPEN_DOCUMENT. Как это получить?

Вот как я запускаю сборщик:

private void startFilePicker(){ Намерение намерение = новое намерение (Intent.ACTION_OPEN_DOCUMENT); Intent.addCategory(Intent.CATEGORY_OPENABLE); Intent.setType("*/*"); Intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true); startActivityForResult (намерение, CODE_ACTION_OPEN_DOCUMENT_FILE); } Это обратный вызов при выборе файла:

@Override protected void onActivityResult (int requestCode, int resultCode, данные намерения) { super.onActivityResult(requestCode, resultCode, data); //регион Новый выбор если (requestCode == CODE_ACTION_OPEN_DOCUMENT_FILE){ если (resultCode == RESULT_OK){ если (данные!= ноль){ если (data.getData() != ноль){ Uri uri = data.getData(); //Здесь получите расширение файла. } } } } } Когда я пытаюсь получить путь к файлу с помощью uri.getPath(), я получаю что-то вроде image:105571 или acc=1;doc= 9204. Поэтому я не могу получить его по пути.

Вопрос: как определить расширение выбранного файла?

Вернуться в «Android»