sql >> Database >  >> RDS >> SQLite

Hoe een bytearray (afbeeldingsgegevens) van en naar een SQLite-database opslaan en ophalen?

Bytearray kan worden opgeslagen als BLOB-gegevenstype. Er is niets bijzonders aan deze procedure, behalve speciale zorg voor chunking, zoals:

InputStream is = context.getResources().open(R.drawable.MyImageFile);
try {
    byte[] buffer = new byte[CHUNK_SIZE];
    int size = CHUNK_SIZE;
    while(size == CHUNK_SIZE) {
        size = is.read(buffer);  //read chunks from file
        if (size == -1) break;

        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
    }
} catch (Exception e) {
    Log.e(TAG, "Error saving raw image to: "+rawId, e);
}



  1. Alle objectrechten voor een specifieke rol ophalen

  2. PostgreSQL vs MySQL, een vergelijking

  3. LINQ naar SQL meerdere tabellen left outer join

  4. Probleem met SQLiteOpenHelper op Android 2.X en 3.X