Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
danchik5563
0 / 0 / 0
Регистрация: 21.09.2015
Сообщений: 10
#1

Android. Как сохранить ArrayList<String> в файл - Программирование Android

21.09.2015, 11:54. Просмотров 1191. Ответов 5
Метки нет (Все метки)

Ребята, помогите пожалуйста. Есть список:

Java
1
ArrayList<String> myList;


Пишу приложение типа заметок на Android, в качестве контейнера для заметок использую ArrayList<String>

Собственно, вопрос.

Как мне реализовать в Android Studio сохранение, с последующей загрузкой этого листа из файла.

Я начинающий программист и еще не очень хорошо знаю JAVA.
Как удобнее всего сохранять и загружать этот файл с использованием наименьшего кода желательно.


Заранее благодарен!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2015, 11:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Android. Как сохранить ArrayList<String> в файл (Программирование Android):

Скачать небольшой файл и засунуть его в ArrayList<String> - Программирование Android
Есть на сервере xml файл 10кб (такой как SharedPreference на смарте). &lt;?xml version='1.0' encoding='utf-8' standalone='yes' ?&gt; &lt;map&gt;...

Как сохранить ArrayList - Программирование Android
Знаю,вопрос наверное глупый,но как? У меня приложение &quot;Телефонная книга&quot;. Если б я просто писал на джаве, то просто добавлял бы контакты в...

Android arrayList - Программирование Android
У меня есть два активити, в одном получаю значения и записываю их в ArrayList, а в другом мне их нужно печатать на экран. Как можно это...

SharedPreferences ArrayList<String> - Программирование Android
Можно ли массив целый сохранить именно методом SharedPreferences ?

Как поместить в preferences arrayList типа: arraylist<Class> - Программирование Android
Как поместить в preferences arrayList типа: arraylist&lt;Class&gt; Class содержит вид: public class CountryClass { private String...

Можно ли ArrayList с числами сохранить в SharedPreferences? - Программирование Android
Ребят, у меня есть ArrayList с 12 числами, как его можно сохранить SharedPreferences, ведь там идет работа с примитивными типами? Если кто...

5
YuraAAA
1577 / 1318 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
21.09.2015, 12:42 #2
danchik5563, сериализовать. Например, разделить пробелом, новой строкой, точкой с запятой итд, либо использовать JSON формат
0
danchik5563
0 / 0 / 0
Регистрация: 21.09.2015
Сообщений: 10
21.09.2015, 12:46  [ТС] #3
YuraAAA, Видите ли, я начинающий программист. Я искал сериализацию под JAVA, Но не смог применить ее в моем случае. Мне бы код желательно.
0
Pablito
2500 / 1984 / 619
Регистрация: 12.05.2014
Сообщений: 6,926
Завершенные тесты: 1
21.09.2015, 13:01 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
эти два метода должны быть в той активити, где идет сохранение
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    private void saveArrayList(String name, ArrayList<String> list) {
        SharedPreferences prefs = getSharedPreferences("myPrefs", MODE_PRIVATE);
        SharedPreferences.Editor editor = prefs.edit();
        StringBuilder sb = new StringBuilder();
        for (String s : list) sb.append(s).append("<s>");
        sb.delete(sb.length() - 3, sb.length());
        editor.putString(name, sb.toString()).apply();
    }
 
    private ArrayList<String> loadArrayList(String name) {
        SharedPreferences prefs = getSharedPreferences("myPrefs", MODE_PRIVATE);
        String[] strings = prefs.getString(name, "").split("<s>");
        ArrayList<String> list = new ArrayList<>();
        list.addAll(Arrays.asList(strings));
        return list;
    }
как пользоваться
Java
1
2
        saveArrayList("zametki", list); // сохраняем
        ArrayList<String> zametki = loadArrayList("zametki"); // загружаем
2
danchik5563
0 / 0 / 0
Регистрация: 21.09.2015
Сообщений: 10
23.09.2015, 15:04  [ТС] #5
Паблито, спасибо, очень выручили. Но не могли бы Вы мне подсказать, какое условие нужно добавить, если у меня Лист пустой, ибо если так, то функция сохранения вылетает с ошибкой.
0
Pablito
2500 / 1984 / 619
Регистрация: 12.05.2014
Сообщений: 6,926
Завершенные тесты: 1
23.09.2015, 15:11 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
можно в saveArrayList поменять строчку
Java
1
sb.delete(sb.length() - 3, sb.length());
на
Java
1
if (list.size() > 0) sb.delete(sb.length() - 3, sb.length());
1
23.09.2015, 15:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2015, 15:11
Привет! Вот еще темы с ответами:

Передача ArrayList<String> через intent - Программирование Android
Создан класс для передачи через intent: package ru.frozik6k.lohouse; import android.os.Parcel; import android.os.Parcelable; ...

Как найти файл в Android Studio - Программирование Android
Народ, подскажите пожалуйста... Мое приложение создает файл с текстовыми данными по нажатию кнопки. Как в Андроид Студио, в эмуляторе найти...

Как открыть jar файл в Android Studio? - Программирование Android
Человек с работы прислал jar файл приложения. Я должен поразбираться и посмотреть как что устроено (только начал изучение android). У меня...

Как добавить звуковой файл в Android Studio? - Программирование Android
Подскажите пожалуйста как правильно загрузить звуковой файл в Андройд Студио, я его туда вставляю, а студия не распознает.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru