Получение информации о файле

Прежде чем начать работать с файлом, клиентское приложение может получить информацию о файле от серверного приложения, включая типа данных и размер файла. Тип данных позволяет определить, может ли клиентское приложение его обработать, а размер файла помогает выделить под него место в памяти и кэше.

В уроке мы покажем как запросить у серверного приложения объект FileProvider для получения MIME типа и размера файла.

Получение MIME типа файла

Тип файла показывает, как приложение должно обрабатывать его содержимое. Чтобы получить тип файла по его URI, клиентское приложение может вызвать метод ContentResolver.getType(). Метод возвращает MIME тип. По умолчанию, FileProvider определяет тип файла по его расширению.

В следующем примере показано как запросить тип файла по его URI:

Получение имени и размера файла

Класс FileProvider имеет стандартную реализацию метода query(), с помощью которого можно получить имя и размер файла по его URI, используя объект типа Cursor. Стандартная реализация возвращает два столбца:

DISPLAY_NAME
Имя файла в виде строкового объекта String. Такое же значение возвращает метод File.getName().
SIZE
Размер файла в байтах, тип значения long. Такое же значение возвращает метод File.length().

Можно получить сразу оба значения, если в метод query() передать в качестве всех аргументов, null, кроме URI. В следующем примере мы получим DISPLAY_NAME и SIZE файла и отобразим эти значения в разных TextView:

Добавить комментарий