본문 바로가기
개발 이야기/안드로이드

[Android] SharedPreferences 클래스 초기화 데이터(안드로이드 INI 파일)

by 런던살자 2019. 1. 1.

안녕하세요 마블랑입니다.

 

윈도우에서 초기화 데이터를 저장하고 읽어오려면 Ini 파일을 이용하면 됩니다.

 

안드로이드에도 그러한 기능을 가진 클래스가 있는데요

 

바로 SharedPreferences 클래스인데요

 

사용법을 알면 윈도우에서 Ini 파일을 사용하는것보다 쉽습니다.

 

아마도 윈도우에서는 Ini 파일의 경로를 지정해야하지만 안드로이드에서는 경로를 지정하지 않고 Key와 Value만 지정하면 되기 때문이지 않을까 싶습니다.

 

안드로이드에서는 SharedPreferences 클래스를 이용하여 boolean형, int형, String형의 데이터를 읽고 쓰기를 할 수 있고 데이터형에 따라 사용하는 함수가 달라집니다.

 

우선 예제를 통해서 데이터를 읽어오는 방법에 대해서 알려드리겠습니다

 

SharedPreferences prfs = getSharedPreferences("Mablang", Context.MODE_PRIVATE); //Mablang이라는 저장소에서 데이터를 가져온다고 보면 됩니다.

 

boolean bTemp = prfs.getBoolean("Mablang_ini_bool", false); //Boolean 형 데이터를 가져옵니다. 매개변수는 Key와 해당되는 값이 없을 경우 변수에 저장되는 기본값입니다.
int nTemp = prfs.getInt("Mablang_ini_int", 0); //Int형 데이터를 가져옵니다. 매개변수는 역시 Key와 디폴트 값입니다.
String strTemp = prfs.getString("Mablang_ini_str", "");
//String형 데이터를 가져옵니다. 매개변수는 Key와 디폴트 값입니다.

 

 

이어서 데이터를 쓰는 방법에 대해서 알려드리겠습니다.

 

 

SharedPreferences prfs = getSharedPreferences("Mablang", Context.MODE_PRIVATE); //Mablang이라는 저장소에 데이터를 저장한다고 보면 됩니다. 데이터를 읽어올때도 동일한 저장소를 이용하기 때문에 다르지 않도록 주의해야합니다.


SharedPreferences.Editor ed = prfs.edit(); //데이터를 쓸때는 SharedPreferences의 Editor를 선언해야합니다.

 

ed.putBoolean("Mablang_ini_bool",true); //Boolean형 데이터를 저장합니다. 매개변수는 Key와 데이터입니다.
ed.putInt("Mablang_ini_int",2018); //Int형 데이터를 저장합니다. 매개변수는 Key와 데이터입니다.
ed.putString("Mablang_ini_str", "Mablang Ini"); //String형 데이터를 저장합니다. 매개변수는 Key와 데이터입니다.

 

ed.commit(); //commit을 실행해줘야 데이터가 저장이 됩니다.

 

 

이제 예제를 실행해 보겠습니다.

 

예제를 처음 시작하면 상단에 데이터가 모두 기본값으로 되어 있습니다.

 

예제 하단 부분에 데이터를 입력한뒤 Write 버튼을 클릭해보겠습니다.

 

상단의 데이터가 변경된것을 확인하시면 됩니다.

 

 

이렇게 안드로이드의 초기화 데이터 읽고 쓰기에 대해서 알려드렸는데요.

 

간단한 구문이라 어렵지 않게 사용하실수 있을거 같습니다.

 

이상 마블랑이었습니다. 읽어주셔서 고맙습니다.

댓글