Как получить расширение файла, выбранного с помощью 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. Поэтому я не могу получить его по пути.

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

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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