보통 Base64는 특수문자나 바이너리를 인코딩해서 네트웍이나 파일처리를 위해서 사용합니다.
물론, 설정파일에 입력하기 어려운 ” 이나 특수문자가 포함된 데이터는 설정파일에 넣게 되면 에러가 발생하게 됩니다..
그래서, 민감한 데이터를 암호화해서 로컬에 저장하기도 하는데, 암호화를 하다보면 특수문자 때문에 데이터가 로컬의 설정파일에 들어가지 않는 경우가 종종 발생합니다.. 그 때도 Base64로 인코딩해서 저장을 하면 쉽게 해결이 됩니다..
그래서, 간단한 Base64 클래스를 끄적여 봅니다..
import android.util.Base64;
/**
* <pre>
* net.sjava.android.util.Base64Util.java
* </pre>
*
* @author : mcsong@gmail.com
* @version :
* @data : 2011. 10. 2. 오후 3:34:23
*
*/
public class Base64Util {
/**
* Encode txt
* @param txt
* @return
* @throws UnsupportedEncodingException
*/
public static String encode(String txt) throws UnsupportedEncodingException {
byte[] data = txt.getBytes(“UTF-8”);
return Base64.encodeToString(data, Base64.DEFAULT);
}
/**
* Decode txt
* @param txt
* @return
* @throws UnsupportedEncodingException
*/
public static String decode(String txt) throws UnsupportedEncodingException {
return new String(Base64.decode(txt, Base64.DEFAULT), “UTF-8”);
}
}