Я использую google maps v2, и каждый раз я разбираю одну и ту же json из папки с ресурсами и использую для ее представления на карте. Я храню все значения json в ArrayList<Map<String, Object>> myarraylist ;
Я бы хотел для сохранения того же в Android.
Я очень ценю любой способ сделать это. Я знаю только, чтобы хранить строки и boolean в sharedpreferences. Пожалуйста, помогите мне.
Спасибо заранее.save ArrayList <Карта <String, Object >> android
ответ
Вы можете использовать gson.jar для хранения объектов класса в SharedPreferences. Вы можете downlaod эту баночку здесь https://code.google.com/p/google-gson/downloads/list
SharedPreferences mPrefs = getPreferences(MODE_PRIVATE);
Спасти
Editor prefsEditor = mPrefs.edit();
Gson gson = new Gson();
String json = gson.toJson("MyObject");
prefsEditor.putString("MyObject", json);
prefsEditor.commit();
Чтобы извлечь
Gson gson = new Gson();
String json = mPrefs.getString("MyObject", "");
MyObject obj = gson.fromJson(json, MyObject.class);
Чтобы сохранить список заданных пользователем объектов SharedPreferences. например
public static final String CONNECTIONS = "connections";
SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
User entity = new User();
// ... set entity fields
List<Connection> connections = entity.getConnections();
// convert java object to JSON format,
// and returned as JSON formatted string
String connectionsJSONString = new Gson().toJson(connections);
editor.putString(CONNECTIONS, connectionsJSONString);
editor.commit();
Чтобы получить список пользовательских объектов из SharedPreferences
String connectionsJSONString = getPreferences(MODE_PRIVATE).getString(CONNECTIONS, null);
Type type = new TypeToken < List <Connection>>() {}.getType();
List <Connection> connections = new Gson().fromJson(connectionsJSONString, type)
Я никогда не использовал GSON, вы можете направить меня к учебнику по внедрению GSON в мой код. Спасибо, что Nitesh попытается реализовать то же самое – jason
попробуйте это ... http: //www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/ –
Awesome Спасибо Nitesh. – jason
У вас есть несколько вариантов. Проверьте http://developer.android.com/guide/topics/data/data-storage.html для получения подробных сведений обо всех них.
Могу ли я сохранить его в текстовом файле? ArrayList
Я уверен, что вы могли бы это сделать, но на самом деле это не будет отличаться от их наличия в активах, как вы уже это сделали ... Или вы меняете данные? В этом случае я бы предложил использовать базу данных. Или, в зависимости от сложности данных, хранящихся в объектах, общих настроек (вы можете разместить там все примитивные данные: http://developer.android.com/reference/android/content/SharedPreferences.Editor.html). – jpm
пытается реализовать в строках http://ashoksubha.blogspot.in/2012/05/android-array-list-stored-synchronized.html – jason
Я не думаю, что вы когда-нибудь придумать формат, который позволит повысить производительность с точки зрения пользователя - но вы можете попробовать путь Serializable
- убедитесь, что все объекты на вашей карте являются Serializable - и сохраните двоичный блок в файле во внутренней памяти
- 1. ArrayList <Object <ArrayList <Object> >>
- 2. Преобразовать ArrayList <String> в ArrayList <Object>
- 3. Список <Карта <String, Object >> to org.json.JSONObject?
- 4. листинг Список <Object> в список <Карта <String, Object >>
- 5. ArrayList <ArrayList <String>> против ArrayList <Object>
- 6. Как преобразовать ArrayList <Object> в ArrayList <String> или ArrayList <Timestamp>?
- 7. ArrayList <ArrayList <Character>> преобразовать ArrayList <ArrayList <String>>
- 8. Производительность - объем данных - ArrayList <String>, Список <Object> против LinkedList <String>, LinkedList <Object>
- 9. JAXB: Карта <String, (Map <Object, List <Object>>)>
- 10. Список <?> list = new ArrayList <String>(); List <? extends Object> list = new ArrayList <String>();
- 11. как итерации Карта <String, List <Map <String, Object >>> в java?
- 12. Строка Карта <String, Object>
- 13. Как заполнить ArrayList <ArrayList <String>>, который содержит другой ArrayList <String>
- 14. Как вернуть ArrayList <String> из ArrayList <ArrayList <String>> .get()
- 15. ArrayList <ArrayList <String>> очищается при очистке другого ArrayList <String>
- 16. Convert ArrayList <ArrayList <String>> «назад» в ArrayList <String>
- 17. Добавление ArrayList <String> в ArrayList <ArrayList <String>>
- 18. Добавить ArrayList <HashMap <String, String >> в другой массив ArrayList <HashMap <String, String >>
- 19. Почему Карта <String, Object> не равна Карта <String, ?>
- 20. ArrayList <HashMap <String, String >> для String []
- 21. Конструктор ArrayAdapter <ArrayList <HashMap <String, String >>> (Context, int, ArrayList <HashMap <String, String >>) не определено
- 22. Список <Object> listObject = new ArrayList <Object>()?
- 23. Serialize ArrayList <ArrayList <Object>>
- 24. Convert Map <String, Object> to Map <String, List <Object>>
- 25. Как отсортировать список <Карта <String, String >>
- 26. как получить значения из ArrayList <Hashtable <String, ArrayList <String> >>
- 27. Как объявить HashMap <String, ArrayList <ArrayList <String> >>?
- 28. Как правильно объединить Hashmap <String, ArrayList <Object>> и HashMap <String, Object>
- 29. Разница между ArrayList <String> и ArrayList <>?
- 30. Невероятная проблема с ArrayList <ArrayList <String>>
Если у вас есть ресурс, сохраненный в активах вашего приложения, почему вы хотите десериализировать его, а затем сериализовать его снова? Разрешено ли пользователю вводить данные и вы хотите их сохранить? – Raffaele
У меня это как json, но мне бы хотелось, чтобы ArrayList
пытается реализовать в строках http://ashoksubha.blogspot.in/2012/05/android-array-list-stored-synchronized.html – jason