Сохранение данных из TextView на sd

SQLite, Preferences, файлы, SD, Content Provider, XML, JSON
Ответить
SashaShima
Сообщения: 3
Зарегистрирован: 30 май 2015, 03:49

Сохранение данных из TextView на sd

Сообщение SashaShima » 30 май 2015, 03:55

Так вот дошел до 138 урока с определением местоположения, и нужна помощь, как можно создать журнал сохранения данных о местоположении? Все время ошибка (пытаюсь совместить 75 урок со 138))) Так как можно вывести информацию?

ANdriy123456
Сообщения: 138
Зарегистрирован: 27 июн 2014, 01:41

Re: Сохранение данных из TextView на sd

Сообщение ANdriy123456 » 31 май 2015, 11:15

исли нужно сохранить несколько разных значений, то можно использовать SharedPreference, а если тебе нужно сохранять много таких даных, то желательно использовать встроеную базу даных.

реализацыя использования SharedPreference

Код: Выделить всё

import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import android.util.Log;

public class ShPrefs {

   private final String MY_PREF = "MY_PREFS";

	public static  void SaveStringPrefs(String key, String value, Context context) {
		SharedPreferences preferences =  context.getSharedPreferences(MY_PREF, Activity.MODE_PRIVATE);
		 SharedPreferences.Editor editor = preferences.edit();
		editor.putString(key, value);
		editor.commit();	
	}
	public static  void SaveIntPrefs(String key, int value, Context context) {
		SharedPreferences preferences =  context.getSharedPreferences(MY_PREF, Activity.MODE_PRIVATE);
		 SharedPreferences.Editor editor = preferences.edit();
		editor.putInt(key, value);
		editor.commit();	
	}
public static  void SaveBoolPrefs(String key, Boolean value, Context context) {
		SharedPreferences preferences =  context.getSharedPreferences(MY_PREF, Activity.MODE_PRIVATE);
		 SharedPreferences.Editor editor = preferences.edit();
		editor.putBoolean(key, value);
		editor.commit();	
	}

	public static  String LoadStringPrefs(String key, String defvalue, Context context) {
		SharedPreferences preferences  = context.getSharedPreferences(MY_PREF, Activity.MODE_PRIVATE);
		preferences.getString(key, defvalue);
		return preferences.getString(key, defvalue);
	}
	public static  int LoadIntPrefs(String key, int defvalue, Context context) {
		SharedPreferences preferences =  context.getSharedPreferences(MY_PREF, Activity.MODE_PRIVATE);
		preferences.getInt(key, defvalue);
		return preferences.getInt(key, defvalue);
	}
	
	public static  Boolean loadBooleanPrefs(String key, boolean defvalue, Context context) {
		SharedPreferences preferences =  context.getSharedPreferences(MY_PREF, Activity.MODE_PRIVATE);
		preferences.getBoolean(key, defvalue);
		return preferences.getBoolean(key, defvalue);
	}
	
}

maxim_bo
Сообщения: 4
Зарегистрирован: 02 июн 2015, 17:00

Re: Сохранение данных из TextView на sd

Сообщение maxim_bo » 02 июн 2015, 17:14

Еще вопрос по теме:

Есть textview, программа делает определенные вычисления с переменными, и результат в конце выводит в textview,
Как реализовать, что-бы при выходе из приложения программа записывала значение textview в файл, и при запуске приложения брала его (последнее значение) из файла и присваивала textview. Расширение файла не важно, можно в txt к примеру...

Тоесть запустили textview=0, программа поработала textview=10 при выходе сохранило 10, при запуске имеем textview=10, после работы программы стало 12, при выходе перезаписываем данные в файле с 10 на 12...

Я новичек, поэтому, если можно, пример кода, или ссылку где подробней почитать, в уроках просмотрел, но там записи с кнопки и не совсем то что мне нужно, не могу адаптировать... Покурил форумы, тоже ничего не нашел.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Сохранение данных из TextView на sd

Сообщение Foenix » 02 июн 2015, 17:47

есть уроки по хранению данных. Тебе подойдет простейший SharedPreferences
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Ответить