- Правильная работа с файлами в Android
- Как открыть файл на Андроиде – работаем на телефоне с файлами разных форматов
- Открываем файлы на Андроиде
- С помощью файловых менеджеров
- Как открыть файл HTML на Андроид
- Как открыть файл Tiff на Андроиде
- Как открыть на Андроиде файлы PDF, EXE, ZIP, RAR
- Как открыть файл ворд на Андроиде
- Работа с файловой системой
- Чтение и сохранение файлов
Правильная работа с файлами в Android
Сегодня я бы хотел рассказать вам о правильной работе с файлами в ОС Android. Итак, чаще всего у новичков возникают ситуации, когда обычные Java функции не могут корректно создать тот или иной файл в системе Android.
Во-первых, вам нужно обратить внимание на интересную особенность ОС:
когда вы устанавливаете apk приложение в эмулятор или телефон, система Linux (на которой базируется ядро Android) выделяет ему специальный User-ID, который является неким ключом доступа к (sandbox). То есть другие приложения в телефоне не смогут получить доступ к чтению файлов вашего приложения просто так. Кончено, всё это сделано в целях безопасности.
В общем, если вы запустите следующий код:
FileWriter f = new FileWriter(«impossible.txt»);
То этот код вызовет исключение: ‘java.io.FileNotFoundException: /impossible.txt ‘
Тогда как должен в случае отсутствия файла создать его.
Далее стоит отметить, что данное ограничение не распространяется на файлы, записываемые на SDCard. Туда можно писать любые файлы без всяких проблем, правда предварительно нужно добавить в AndroidManifest разрешение на запись:
Код файла на карту:
File fileName = null;
String sdState = android.os.Environment.getExternalStorageState();
if (sdState.equals(android.os.Environment.MEDIA_MOUNTED)) <
File sdDir = android.os.Environment.getExternalStorageDirectory();
fileName = new File(sdDir, «cache/primer.txt»);
> else <
fileName = context.getCacheDir();
>
if (!fileName.exists())
fileName.mkdirs();
try <
FileWriter f = new FileWriter(fileName);
f.write(«hello world»);
f.flush();
f.close();
> catch (Exception e) <
>
Как уже ранее было сказано мною, android приложение находится в некой песочнице, изолированной от воздействия со стороны других приложений по умолчанию. Для того, чтобы создать файл внутри этой песочницы, следует использовать функцию openFileOutput(). Хочу отметить 2 аргумента:
1. имя файла
2. режим доступа к нему со стороны чужих приложений
С первым аргументом все ясно, что касается второго, то режимов существует два: MODE_WORLD_READABLE и/или MODE_WORLD_WRITEABLE.
И ещё, чтобы записать файл можно использовать следующий код:
final String TESTSTRING = new String(«Hello Android»);
FileOutputStream fOut = openFileOutput(«samplefile.txt», MODE_WORLD_READABLE);
OutputStreamWriter osw = new OutputStreamWriter(fOut);
// записываем строку в файл
osw.write(TESTSTRING);
/* проверяем, что все действительно записалось и закрываем файл */
osw.flush();
osw.close();
Для чтения файлов используется метод openFileInput():
FileInputStream fIn = openFileInput(«samplefile.txt»);
InputStreamReader isr = new InputStreamReader(fIn);
char[] inputBuffer = new char[TESTSTRING.length()];
isr.read(inputBuffer);
String readString = new String(inputBuffer);
Для удаления используется метод deleteFile() в контексте приложения/активити. На этом я бы хотел закончить полезный пост, спасибо за внимание!
Источник
Как открыть файл на Андроиде – работаем на телефоне с файлами разных форматов
Многие активные пользователи мобильных устройств с ОС Android используют свой гаджет для работы с документами. Но не многие знают, что его можно применять для архивирования файлов и их разархивирования, или запускать какое-либо приложение для ПК. И для этого вовсе не придётся перекидывать нужные данные на компьютер, достаточно знать, как открыть файл на Андроиде, об этом мы сейчас и поговорим.
Открываем файлы на Андроиде
Возможности устройств на платформе Android позволяют не только открывать, но и редактировать файлы различных форматов. Чтобы выполнить это действие необходимо установить специальное ПО (какое именно, зависит от типа файла), что наделяет мобильный гаджет функциональностью, практически ничем не уступающей характеристикам ПК.
С помощью файловых менеджеров
Наиболее популярными инструментами для работы с базами данных безусловно являются файловые менеджеры. Стандартные (встроенные) приложения этого сегмента, в большинстве своём, не отличаются таким уровнем функциональности, который мог бы отвечать запросам пользователей. Поэтому, есть смысл воспользоваться одним из проводников, который смог бы справиться с поставленными задачами.
В ряду наиболее распространённых файловых менеджеров можно назвать ES Проводник. Его популярность у пользователей вызвана внушительной функциональностью, позволяющей полноценно работать с базой данных устройства. Русский интерфейс и отсутствие давления на личный бюджет – не менее существенные плюсы программы.
Кроме стандартных манипуляций, таких как просмотр документов и картинок, воспроизведение аудио и видеороликов, с помощью приложения можно управлять собственными файлами как на ПК:
- Перемещать и копировать данные, а также перемещать их, осуществлять совместное пользование и т. д.;
- Создавать новые объекты и удалять;
- Создавать ярлыки и резервные копии;
- Выполнять действия с локальными или, находящимися на ПК, файлами.
- Управлять с ноутбука файлами телефона;
- Архивировать и разархивировать файлы с расширением ZIP и RAR и много другое
С правами Суперпользователя доступна работа с файловой системой устройства, каталогами данных, кроме того, появится возможность изменять разрешения.
Ещё один отличный образчик для операций с содержимым как внутренней памяти Android-устройства, так и SD-карты. Поддержка одиннадцати языков, включая русский, и интуитивно понятный интерфейс делают работу приложения простой и доступной.
В свете сегодняшнего нашего разговора, отмечу следующие особенности Explorer:
- Создание, а также извлечение файлов с расширением zip и tar;
- Извлечение файлов из архива rar;
- Наличие собственного текстового редактора;
- Копирование, перемещение и другие манипуляции, выполняемые в фоновом режиме;
- Открывание файлов с использованием специального ПО;
- Возможность посмотреть свойства объектов (файлов и папок) и многое другое.
Это бесплатное приложение с незамысловатым названием явно заслуживает нашего внимания, как довольно мощный и полнофункциональный инструмент для удобного управления файлами и папками, имеющимися во внутренней или внешней памяти мобильного гаджета, облачных хранилищах, а также подключённых USB-устройствах.
Кроме упомянутых достоинствах этого проводника, можно отметить и следующие:
- Поддержка основных типов файлов (например, doc, ppt, pdf др.), в том числе apk и zip;
- Предпросмотр изображений в следующих форматах: jpg, png, а также gif, bmp, т.д.;
- Управление большинством форматов видео и аудиофайлов;
- Доступ для работы с удалёнными сервисами и многое другое.
Безусловно, три, вышеупомянутых файловых менеджера, не единственные приложения, которые могут решать поставленные задачи. Достаточно просто зайти в Гугл Плей и подобрать инструмент, соответствующий вашим запросам:
Как открыть файл HTML на Андроид
Этот формат на устройствах с ОС Android открывается довольно сложно. На помощь придёт одно из специальных приложений. Ниже я расскажу о ПО, которые помогут в данном случае.
QuickEdit – мощный текстовый редактор, который позволяет пользователю не только полноценно работать с текстом, но и осуществлять просмотр HTML файлов в браузере и редактирование их программного кода. Приложение порадует простым, интуитивно понятным управлением, поддержкой множества языков (в том числе и русского), наличием внушительного списка автоматических процессов.
Можно выделить некоторые важные особенности QuickEdit:
- Подсветка синтаксических конструкций в документе и редактура кода для более пятидесяти языков программирования, в т.ч. HTML;
- Мягкая прокрутка в обоих направлениях (вертикальном и горизонтальном);
- Автоматическое определение и изменение кодировки символов;
- Высокая скорость работы;
- Быстрый поиск и одномоментный переход к нужной строке и т.д.
Кроме QuickEdit, для работы с HTML можно отметить следующие приложения:
- HTML Viewer – отличный инструмент для просмотра и совместного использования HTML-кода;
- WebMaster’s HTML editor – поддерживает множество форматов, эффективное средство для web-программирования на мобильных устройствах;
- HTML Editor – многофункциональный HTML-редактор с возможностью редактирования HTML-кодов и вывода данных.
Для чтения HTML-файлов можно использовать и браузеры, которые наделены такими функциями. Здесь можно упомянуть о UC Browser или Firefox.
Как открыть файл Tiff на Андроиде
Расширение .tif – довольно распространённый формат многостраничных файлов графических изображений, который позволяет сохранять максимально возможное количество информации. Изображения в файлах этого типа, это несколько слоёв и довольно большая глубина цвета, что позволяет широко использовать данный формат в полиграфии и различных графических редакторах. Для просмотра Tiff-файлов также применяются различные специальные приложения.
Отличное бесплатное приложение с полной поддержкой формата, в отличие от аналогичных ресурсов, имеющих зачастую некоторые ограничения.
Multi-TIFF имеет встроенный браузер, который используется для открытия файлов, либо возможно использование интернет-браузеров (в данном случае обязательно наличие протоколов HTTP и HTTPS), почтовых и FTP клиентов, облачных хранилищ и т.д.
Приложение отличается быстрой работой, безопасностью и неоспоримым удобством, а также имеет множество инструментов для сжатия .tif-файлов в различные форматы.
Как открыть на Андроиде файлы PDF, EXE, ZIP, RAR
Отдельными темами мы уже писали, как открывать файлы с расширением .zip и .rar, а также .exe, поэтому, сейчас повторяться я не буду, прочитать материал можно по указанным ссылкам. А вот на PDF-файлах остановимся поподробнее.
Есть несколько способов открыть файлы .pdf. Это и различные «читалки», и какой-либо из офисных пакетов (например, OfficeSuite), и специальные программы.
Это универсальный инструмент для чтения и редактирования файлов с расширением .pdf. Xodo отличается удобством, понятным управлением и большой скоростью работы.
Из внушительного перечня функций приложения выделим следующие:
- Оптимизация как для смартфонов, так и для планшетов на базе Android;
- Возможность заполнения форм, написание текстов и добавления подписи в PDF-формате;
- Функция автоматической синхронизации с облачными хранилищами (Dropbox и Google Drive);
- Совместное редактирование файлов с расширением .pdf онлайн и многое другое.
Подобрать приложение, с помощью которого можно открывать ПДФ файлы, будет совсем не сложно. Для этого нужно всего лишь ввести соответствующий запрос в Play Маркете и выбрать из предложенного списка программу, отвечающую вашим запросам:
Как открыть файл ворд на Андроиде
Как и при работе с файлами других форматов, файлы Word открывать и редактировать можно только с использованием специальных приложений. Наиболее популярное из них – Microsoft Word. Как работает с эта программа, мы узнаем из видеоролика:
Надеюсь сегодняшний материал о том, как открыть файл на телефоне Андроид, был для вас, дорогие читатели нашего блога, познавательным и интересным. Ну, а я, прощаюсь с вами до следующей темы. Удачи!
Источник
Работа с файловой системой
Чтение и сохранение файлов
Работа с настройками уровня activity и приложения позволяет сохранить небольшие данные отдельных типов (string, int), но для работы с большими массивами данных, такими как графически файлы, файлы мультимедиа и т.д., нам придется обращаться к файловой системе.
ОС Android построена на основе Linux. Этот факт находит свое отражение в работе с файлами. Так, в путях к файлам в качестве разграничителя в Linux использует слеш «/», а не обратный слеш «\» (как в Windows). А все названия файлов и каталогов являются регистрозависимыми, то есть «data» это не то же самое, что и «Data».
Приложение Android сохраняет свои данные в каталоге /data/data/ / и, как правило, относительно этого каталога будет идти работа.
Для работы с файлами абстрактный класс android.content.Context определяет ряд методов:
boolean deleteFile (String name) : удаляет определенный файл
String[] fileList () : получает все файлы, которые содержатся в подкаталоге /files в каталоге приложения
File getCacheDir() : получает ссылку на подкаталог cache в каталоге приложения
File getDir(String dirName, int mode) : получает ссылку на подкаталог в каталоге приложения, если такого подкаталога нет, то он создается
File getExternalCacheDir() : получает ссылку на папку /cache внешней файловой системы устройства
File getExternalFilesDir(String type) : получает ссылку на каталог /files внешней файловой системы устройства
File getFileStreamPath(String filename) : возвращает абсолютный путь к файлу в файловой системе
FileInputStream openFileInput(String filename) : открывает файл для чтения
FileOutputStream openFileOutput (String name, int mode) : открывает файл для записи
Все файлы, которые создаются и редактируются в приложении, как правило, хранятся в подкаталоге /files в каталоге приложения.
Для непосредственного чтения и записи файлов применяются также стандартные классы Java из пакета java.io.
Итак, применим функционал чтения-записи файлов в приложении. Пусть у нас будет следующая примитивная разметка layout:
Поле EditText предназначено для ввода текста, а TextView — для вывода ранее сохраненного текста. Для сохранения и восстановления текста добавлены две кнопки.
Теперь в коде Activity пропишем обработчики кнопок с сохранением и чтением файла:
При нажатии на кнопку сохранения будет создаваться поток вывода FileOutputStream fos = openFileOutput(FILE_NAME, MODE_PRIVATE)
В данном случае введенный текст будет сохраняться в файл «content.txt». При этом будет использоваться режим MODE_PRIVATE
Система позволяет создавать файлы с двумя разными режимами:
MODE_PRIVATE : файлы могут быть доступны только владельцу приложения (режим по умолчанию)
MODE_APPEND : данные могут быть добавлены в конец файла
Поэтому в данном случае если файл «content.txt» уже существует, то он будет перезаписан. Если же нам надо было дописать файл, тогда надо было бы использовать режим MODE_APPEND:
Для чтения файла применяется поток ввода FileInputStream :
Подробнее про использование потоков ввода-вывода можно прочитать в руководстве по Java: https://metanit.com/java/tutorial/6.3.php
В итоге после нажатия кнопки сохранения весь текст будет сохранен в файле /data/data/название_пакета/files/content.txt
Где физически находится созданный файл? Чтобы увидеть его на подключенном устройстве перейдем в Android Stud в меню к пункту View -> Tool Windows -> Device File Explorer
После этого откроектся окно Device File Explorer для просмотра файловой системы устройства. И в папке data/data/[название_пакета_приложения]/files мы сможем найти сохраненный файл.
Источник