안드로이드 개발 질문/답변
(글 수 45,052)
db.execSQL("INSERT INTO A VALUES (null, 'girl' , 소녀) ;" );
위처럼하면 A테이블의 girl 항에 소녀 라는 텍스트가 저장 되잔아요
그럼 이미지를 넣는 방법도 있을까요?
제가 가지고있는 이미지파일을 DB로 넣으려는데 아무리 찾아봐도 모르겠네요..
고수님들의 작은 조언을 바랍니다..
2012.04.12 20:33:25
바로 생각나는거라고는... BASE64 encode해서 DB에 넣는게 떠오르네요...
단점은... 30%정도 데이터가 커진다는거랑... \0문자가 끝을 의미하니까... 이걸 치환해줘야 한다는것..... 퍼포먼스가 얼마나 나올지는 모르겠네요...
일단 byteArray로 전환하는 메서드 던져놓고 실력 좋으신 다른분한테 넘깁니다... ㅠ
static public byte[] getByteArrayFromBitmap(Bitmap bitmap) {
// bitmap이 null이면 null을 리턴합니다.
if (bitmap == null)
return null;
// Byte배열 아웃풋 스트림을 생성하고
final ByteArrayOutputStream stream = new ByteArrayOutputStream();
// 스트림에 비트맵을 기록합니다.
bitmap.compress(CompressFormat.JPEG, 100, stream);
// 스트림을 Byte배열로 전환해서 리턴합니다.
return stream.toByteArray();
}




비트맵을 byte array형식으로 전환해서 넣으세용