- Создаём текстовый редактор
- Операции с файлами
- activity_main.xml
- res/menu/menu_main.xml
- Класс MainActivity
- Сохранение настроек — Флажки
- res/values/strings.xml
- res/xml/preferences.xml
- Класс SettingsActivity
- Сохранение текстовых настроек
- Сохранение настроек — Списки
- res/values/arrays.xml
- Создать на андроиде новый текстовый файл и редактировать с помощью файлового менеджера установленного на нашем смартфоне или планшете
- Отзывы о текстовом документе на Андроид
- Полный список
- Внутренняя память
- SD карта
Создаём текстовый редактор
Операции с файлами
Рассмотрим вопросы ввода/вывода, которые являются распространёнными операциями в программировании. В Android можно сохранять файлы непосредственно на самом устройстве или на внешней карте памяти. Для каждой программы на устройстве выделяется собственная папка, в которой приложение может хранить свои файлы. По умолчанию другие приложения не могут обращаться к этим файлам. Если вы сохраняете файлы на внешнем накопителе, то доступ возможен.
Android использует стандартные операции ввода/вывода, принятые в Java. Например, Android реализует файловые потоки с помощью классов из пакета java.io, а также имеет собственные классы для работы с файлами внутри приложения.
Чтобы записать данные в файл, необходимо вызвать метод Context.openFileOutput() и передать в качестве параметра имя файла. Метод возвращает стандартный Java-объект FileOutputStream. Вызов метода для данного файла из другого приложения не будет работать, обратиться вы можете только к своим файлам. Например, чтобы создать файл и записать данные, пишем следующий код:
Если имеется статический файл, который надо упаковать с вашим приложением во время компиляции проекта, можно сохранить его в каталоге res/raw/, а затем открыть его при помощи метода Resources.openRawResource(). Он возвращает объект InputStream, который можно использовать для чтения файла. После окончания работы с потоком не забудьте его закрыть, вызвав метод close().
Создадим простейший аналог Блокнота, позволяющий записывать и читать данные из файла.
На экране активности разместим компонент EditText и растянем его:
activity_main.xml
Создадим пункты меню Открыть и Сохранить в ресурсах. Строковые ресурсы добавьте самостоятельно.
res/menu/menu_main.xml
В методах openFile() и saveFile() реализуем операции по открытию и сохранению файла. Для Kotlin код получился намного короче.
Класс MainActivity
Мы получили простой блокнотик, позволяющий сохранять записи в одном заданном файле. Вы можете усовершенствовать приложение, добавив возможность создания новых файлов и их удаления.
Сохранение настроек — Флажки
Расширим функциональность блокнота, добавив в него возможность сохранения различных настроек.
Подготовим различные настройки, которые будем хранить в файле строковых ресурсов strings.xml:
res/values/strings.xml
Теперь создадим файл настроек preferences.xml (если забыли, то перечитайте статью Сохранение настроек):
res/xml/preferences.xml
Итак, мы определили первую настройку под именем pref_openmode, которая будет или сразу загружать файл в поле редактирования, если установлен флажок, или открывать пустое поле, если флажок не установлен.
Создадим новую активность, которая наследует от класса PreferenceActivity. В классе активности для предпочтений внутри метода обратного вызова onCreate() нужно только вызвать метод addPreferencesFromResource() и загрузить XML-файл preferences.xml, содержащий наши настройки (пока одну):
Класс SettingsActivity
Не забываем добавить объявление активности SettingsActivity в файл манифеста AndroidManifest.xml:
Добавим новый пункт меню Настройки в меню (файл res/menu/main.xml), чтобы открывать подготовленное окно настроек.
В методе onOptionsItemSelected() класса MainActivity добавим новый блок when/switch:
Запустите приложение и убедитесь, что в меню появился новый пункт, который открывает окно настроек.
Чтение установок предпочтений нужно проводить в методе onResume(), который вызывается системой как во время запуска приложения, так и после закрытия окна настроек и возврата главной активности на передний план:
В методе getBoolean() второй параметр false означает значение по умолчанию для возвращаемого значения предпочтения, если запрос на чтение установленного значения закончится неудачей.
Мы создали первую настройку, позволяющую сразу открывать нужный файл для редактирования, если отметить галочкой нужный пункт.
Сохранение текстовых настроек
Добавим возможность устанавливать размер шрифта для текста. Откроем снова файл preferences.xml и добавим новый элемент EditTextPreference:
В метод onResume() добавим новый код для чтения установленного значения размера шрифта:
Запустите проект и вызовите окно настроек. Теперь у нас появилась опция установки размера шрифта. Если щёлкнуть на новом пункте, то откроется диалоговое окно с текстовым полем ввода.
Обращаю ваше внимание, что в нашем примере не проверяется пользовательский ввод, что может привести к ошибкам, если вместо числового значения для размера шрифта пользователь введёт слово Кот или любое другое слово из трёх букв. Никогда не доверяйте пользователю!
Сохранение настроек — Списки
Продолжим работу с текстовым редактором и добавим в него список для выбора стиля текста. В списке будет четыре опции: Обычный, Полужирный, Курсив, Полужирный+Курсив.
Подготовим массив строк и сохраним его в файле arrays.xml, который необходимо поместить в каталог res/values/ (хотя можно просто добавить в strings.xml).
res/values/arrays.xml
В файл preferences.xml добавим дополнительный элемент ListPreference, в котором определим атрибуты заголовка окна, привязку к массиву значений и значение по умолчанию:
Для чтения настроек из списка добавляем код в метод onResume() класса MainActivity:
Запустив проект, вы теперь увидите новую настройку Стиль для шрифта, которая открывает диалоговое окно для выбора стиля из списка. Обратите внимание, что в диалоговом окне нет кнопки сохранения, только Отмена. Изменения сохраняются сразу при выборе опции списка.
В статье Сохранение настроек можно прочитать дополнительные материалы по улучшению окна настроек. Например, можно добавить новую настройку, связанную с выбором цвета для текста.
Источник
Создать на андроиде новый текстовый файл и редактировать с помощью файлового менеджера установленного на нашем смартфоне или планшете
В этой статье мы посмотрим как создать текстовый файл на андроиде. Иногда не только на компьютере но и на телефоне приходится создавать текстовые документы, а что касается смартфонов на Андроид, то они нам в данное время почти заменяют компьютер.
Даже в дороге мы можем не теряя время создавать новые текстовые файлы на телефоне и редактировать их с помощью файловых менеджеров установленных на нашем смартфоне. Ниже мы покажем несколько простых способов как это сделать, а вы выберите для себя более удобный. И не забудьте в отзывах поделиться, каким способом воспользовались вы.
Первый способ. Создавать текстовый файл на андроиде будем через приложение X-plore, это очень удобное приложение файловый менеджер и оно способно на многое. Если на вашем смартфоне не установлено данное приложение, то рекомендую установить бесплатно скачав с Play Маркета или с других ресурсов, уверен, всегда пригодится. Делаем текстовый документ на Андроид следующим образом:
Открываем приложение X-plore и выбираем папку или нужное место где мы хотим создать текстовый файл. Далее в меню слева или в другой части экрана находим иконку с надписью «создать текст. » и нажимаем на него. Теперь мы видим окошко где нужно вписать название текстового документа, после того как ввели имя файла нажимаем «ок» теперь мы можем редактировать созданный на андроиде текстовый файл. Если вы хотите написать что ни будь в созданном документе пишем, а если вы хотите просто сохранить нажимаем на иконку в виде карты памяти или просто нажимаем на кнопки назад. В обоих случаях наш новый текстовый файл сохранится на андроиде в выбранном нами ранее месте.
Второй способ. Для создания и дальнейшей работы с текстовыми файлами на Андроид используйте приложение Google Документы, Таблицы или Презентации. На некоторых устройствах эти приложения уже бывают установлены с завода, но если их нет на телефоне, то можете бесплатно скачать Play Маркета.
Например приложение «Google Документы» на Android может создавать на телефоне новый текстовый файл в формате TXT, Word (DCX), PDF, OpenDocument (ODT), Rich Text (RTF), Веб-страница (HTML, ZIP-архив), EPUB, а так же позволяет редактировать уже имеющиеся. При создании новых текстовых документов в приложении Google Документы можно применить готовые шаблоны — Резюме, Письма, Образование, Доклады, Планы уроков, Работа, Проектное предложение, План совещания, Для новых сотрудников, Рассылка и тд. В общем, для тех, кто часто работает с документами на телефоне стоит скачать и установить эти полезные программы тем более бесплатно.
Третий способ более простой, достаточно скачать на телефон текстовый документ с сайта по этой ссылке. Редактировать текстовый файл на Андроид вы можете файловым менеджером установленным на вашем смартфоне или планшете.
Как видите ничего сложного в создании текстового документа на телефоне нет. А можно просто скачать текстовый файл на смартфон с сайта по ссылке выше. Если что то не понятно и остались вопросы, пишите в отзывах, попробуем помочь чем сможем.
Надеюсь, статья как на телефоне Андроид сделать новый текстовый документ оказалась полезной. Не забудьте оставить отзыв и указать модель устройства и способ которым воспользовались чтоб и другим осталась от вас полезная информация. Спасибо за отзывчивость!
Статью прислал Соколов М 03.11.2015г. Отредактирован 09.04.2020г.
Отзывы о текстовом документе на Андроид
Добавить отзыв или поделиться полезной информацией по теме страницы.
ОБНОВИТЬ СТРАНИЦУ С ОТЗЫВАМИ
Автор:Олег
23-10-2021
12 час. 41 мин.
Сообщение:
Зато в андроиде есть встроенный и неудаляемый фейсбук. Это важнее, чем встроенный текстовик.
Автор:вик
15-09-2021
11 час. 38 мин.
Сообщение:
каое убожище — андроид(юзаю с 4.0 — 10.0), у него даже встроенного текстовика нет. Календарь запутан и для «заметок» не пригоден. (в кнопочной «Нокиа» -всё чётко -каждый год напоминает -ДнРожд,дело,когда сажать и когда выкапывать . ) — в верс.10 вообще «таймер» забыли. — По удобству юза — как будто на «286 пень пересел»
Автор:Вадим
27-11-2020
00 час. 24 мин.
Сообщение:
спасибо
Автор:Эльдар
22-01-2020
14 час. 42 мин.
Сообщение:
Андроид 9, файловый менеджер другой установлен, придется скачивать
Автор:Кирюха
18-06-2019
14 час. 42 мин.
Сообщение:
Песня1
Автор:Виталик
13-09-2018
14 час. 42 мин.
Сообщение:
Спасибо, доступно разъяснили
Оставляя отзывы, Вы помогаете
другим сделать правильный выбор.
ВАШЕ МНЕНИЕ ИМЕЕТ ЗНАЧЕНИЕ.
Источник
Полный список
— работаем с файлами
Работа с файлами в Android не сильно отличается от таковой в Java. В этом уроке рассмотрим, как записать/прочесть файл во внутреннюю память и на SD-карту.
Project name: P0751_Files
Build Target: Android 2.3.3
Application name: Files
Package name: ru.startandroid.develop.p0751files
Create Activity: MainActivity
Рисуем экран main.xml:
4 кнопки, смысл которых понятен по тексту на них.
В onclick обрабатываем нажатия 4-х кнопок и вызываем соответствующие методы.
writeFile – запись файла во внутреннюю память. Используется метод openFileOutput, который на вход берет имя файла и режим записи: MODE_PRIVATE – файл доступен только этому приложению, MODE_WORLD_READABLE – файл доступен для чтения всем, MODE_WORLD_WRITEABLE — файл доступен для записи всем, MODE_APPEND – файл будет дописан, а не начат заново.
readFile – чтение файла из внутренней памяти. Используем метод openFileInput, принимающий на вход имя файла. Здесь и в методе записи внутреннего файла вы можете задать только имя файла, а каталог для ваших файлов вам уже выделен.
writeFileSD – запись файла на SD. Используем метод getExternalStorageState для получения состояния SD-карты. Здесь можно посмотреть какие бывают состояния. Нам нужно MEDIA_MOUNTED – когда SD-карта вставлена и готова к работе. Далее мы получаем путь к SD-карте (метод getExternalStorageDirectory), добавляем свой каталог и имя файла, создаем каталог и пишем данные в файл.
readFileSD – чтение файла с SD. Все аналогично предыдущему методу, только файл не пишем, а читаем.
Осталось в манифест добавить разрешение на работу с файлами на SD — android.permission.WRITE_EXTERNAL_STORAGE.
Все сохраним и запустим. Видим экран с 4-мя кнопками:
Внутренняя память
Жмем кнопку Записать файл. Видим в логе:
Проверим. Идем в File Explorer (Window > Show View > Other > Android > File Explorer) и открываем там папку data/data/ru.startandroid.develop.p0751files/files и видим там наш файл file.
Возвращаемся в эмулятор. Жмем Прочесть файл и в логе видим:
Это тот текст, который мы записывали в файл.
SD карта
Теперь жмем Записать файл на SD.
Файл записан на SD: /mnt/sdcard/MyFiles/fileSD
Проверяем. Идем в FileExplorer и открываем там папку mnt/sdcard/MyFiles/ а в ней файл fileSD.
Возвращаемся в эмулятор и жмем кнопку Прочесть файл с SD. В логе видим:
Содержимое файла на SD
Этот текст мы и записывали.
mnt/sdcard — обычно этот путь ведет к содержимому SD-карты. Возможно у вас он будет другой.
В общем, при работе с файлами на SD вы используете стандартные java механизмы. А при работе с внутренним хранилищем для удобства можно использовать методы-оболочки от Activity:
openFileOutput – открыть файл на запись
openFileInput – открыть файл на чтение
И есть метод getFilesDir – возвращает объект File, соответствующий каталогу для файлов вашей программы. Используйте его, чтобы работать напрямую, без методов-оболочек.
Подробности работы в java с файловой системой я здесь описывать не буду. На нашем форуме пользователь SKR сделал отличную памятку по работе с файлами. Скорее всего, вы найдете там все что нужно.
Если у вас проверка SD-карты показывает, что карта недоступна (см. лог), то убедитесь в свойствах AVD, что у вас для SDCard указан Size или File. Если указаны, то попробуйте перезапустить AVD.
На следующем уроке:
— создаем экран с вкладками
— используем иконку в названии вкладки
— используем обработчик перехода между вкладками
Присоединяйтесь к нам в Telegram:
— в канале StartAndroid публикуются ссылки на новые статьи с сайта startandroid.ru и интересные материалы с хабра, medium.com и т.п.
— в чатах решаем возникающие вопросы и проблемы по различным темам: Android, Kotlin, RxJava, Dagger, Тестирование
— ну и если просто хочется поговорить с коллегами по разработке, то есть чат Флудильня
— новый чат Performance для обсуждения проблем производительности и для ваших пожеланий по содержанию курса по этой теме
Источник