2012-07-30 2 views
0

SQLite 데이터베이스에 객체를 삽입하는 데 문제가 있습니다. 내 클래스는 Case은 다음과 같습니다SQLite 데이터베이스, 비트 맵이있는 객체

public class Case { 

String caseNumber; 
int status; 
String date; 
Bitmap rightIndexFinger; 
Bitmap leftIndexFinger; 


public Case(String caseNumber, int status, String date, Bitmap rightIndexFinger, Bitmap leftIndexFinger) { 

    this.caseNumber = caseNumber; 
    this.status = status; 
    this.date = date; 
    this.rightIndexFinger = rightIndexFinger; 
    this.leftIndexFinger = leftIndexFinger; 

} 

public Case(String caseNumber, int status, String date) { 

    this.caseNumber = caseNumber; 
    this.status = status; 
    this.date = date; 
} 


public Bitmap getRightIndexFinger() { 
    return rightIndexFinger; 
} 


public void setRightIndexFinger(Bitmap rightIndexFinger) { 
    this.rightIndexFinger = rightIndexFinger; 
} 


public Bitmap getLeftIndexFinger() { 
    return leftIndexFinger; 
} 


public void setLeftIndexFinger(Bitmap leftIndexFinger) { 
    this.leftIndexFinger = leftIndexFinger; 
} 


public String getCaseNumber() { 
    return caseNumber; 
} 


public void setCaseNumber(String caseNumber) { 
    this.caseNumber = caseNumber; 
} 


public int getStatus() { 
    return status; 
} 


public void setStatus(int status) { 
    this.status = status; 
} 


public String getDate() { 
    return date.toString(); 
} 


public void setDate(String date) { 
    this.date = date; 
} 
} 

나는 SQLite는 데이터베이스에이 클래스의 개체를 삽입해야합니다. 내가 시도하는 것입니다 :

String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CASES + "(" 
       + KEY_ID + " INTEGER PRIMARY KEY," + DATE + " TEXT," 
       + RIGHTFINGER + " TEXT," + LEFTFINGER +" TEXT" + ")"; 
     db.execSQL(CREATE_CONTACTS_TABLE); 

이 메이크업 감각 case 클래스 내 모든 변수는 String했지만 나는 비트 맵이 작업을 수행 할 수있는 방법 있다면? 이 sqlite에서

답변

1

변환 맵으로 삽입하고,이 바이트를 저장할 Blob 데이터 유형으로 데이터베이스에 배열. 코드를 folloqing 작성자 :

ContentValues cv=new ContentValues(); 
    cv.put(CHUNK, buffer);  //CHUNK blob type field of your table 
    long rawId=database.insert(TABLE, null, cv); //TABLE table name 

하기로 물방울에 대해 자세히 알아보기 :

Bitmap image = BitmapFactory.decodeResource(getResources(), R.drawable.thumbnail); 

ByteArrayOutputStream out = new ByteArrayOutputStream(); 

image.compress(Bitmap.CompressFormat.PNG, 100, out); 

byte[] buffer=out.toByteArray(); 

코드 다음 BLOB 타입 사용 바이트 배열을 저장하려면 :

코드 다음 바이트 배열 사용에 비트 맵을 변환하려면 이 링크