вторник, 5 марта 2013 г.

Чтение файлов на устройстве Android

Часто при разработке приложений под Android возникают задачи, требующие доступ к файловой системе мобильного устройства, например, если нужно сохранять данные локально в файл на устройстве пользователя. В таком случае необходимо воспользоваться API к файловой системе Android. API предоставляет возможности манипуляции файлами и директориями в файловой системе.
В системе Android существует два способа хранения данных в памяти: во внутренней памяти устройства и на внешнем носителе (SD-карте). Для записи данных во внешнюю память нужно  в файл манифеста приложения AndroidManifest.xml добавить соответствующее разрешение:

<permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></permission>

Я покажу как можно получить список файлов в определенной директории.
Для доступа к файлам и папкам в Android используется класс File из java.io. Конструктор класса File по умолчанию принимает путь до файла или папки:

File imagesPath = new File("/mnt/sdcard/Android/data/images");

Можно указать полный путь к файлу или папке. Также можно получить доступ к корневой директории SD-карты с помощью Environment.getExternalStorageDirectory():

File imagesPath = new File(Environment.getExternalStorageDirectory() + "images"); 

Перед тем, как начать работать с папкой, нужно проверить ее существование:

if(imagesPath.exists()){
   // Выполнение операций над папкой
}


Для того, чтобы получить список файлов в определенной папке в классе File реализован метод listFiles():

File[] images = imagesPath.listFiles();

Другие возможности класса File можно посмотреть в документации языка Java.
Приятного программирования с использованием API файловой системы Android!

Комментариев нет:

Отправить комментарий