¿Cómo almaceno y recupero una matriz de bytes (datos de imagen) desde y hacia una base de datos SQLite en Android?Cómo almacenar y recuperar una matriz de bytes (datos de imagen) desde y hacia una base de datos SQLite?
Respuesta
La matriz de bytes se puede almacenar como tipo de datos BLOB. No hay nada especial en este procedimiento, excepto especial cuidado para fragmentación, como:
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);
}
¿puedes darme un poco más de código para esto? –
@gevorg ¿por qué es necesario fragmentar? – SadeepDarshana
@barmaley ¿Se añaden todos los trozos en un solo blob en un solo registro (es decir, ¿se obtiene un blob final que contiene la imagen completa) o se crean múltiples registros por fragmento? (como en este código) – SadeepDarshana
- 1. ¿Cómo almacenar (imagen de mapa de bits) y recuperar imágenes de la base de datos sqlite en android?
- 2. Cómo recuperar datos de la base de datos sqlite en android y mostrarlos en TextView
- 3. Cómo almacenar y usar una sal de shiro desde la base de datos
- 4. El método más seguro de Python para almacenar y recuperar contraseñas de una base de datos
- 5. Cargando una base de datos SQLite de una secuencia de bytes en .NET
- 6. ¿Almacena datos de imagen en una base de datos MySQL?
- 7. Android ExpandableListView y base de datos SQLite
- 8. Cómo almacenar imágenes en la base de datos SQLite
- 9. WinRT y estructura persistente hacia y desde una matriz de bytes?
- 10. Cómo almacenar objetos en la base de datos sqlite?
- 11. ¿Cómo podemos descargar la base de datos sqlite desde url y agregarla a nuestra aplicación como base de datos sqlite?
- 12. Almacenar y recuperar tablas de datos de la sesión
- 13. Android - ¿Existe una base de datos SQLite?
- 14. ¿Cómo puedo almacenar datos geográficos en una base de datos de Android y consultarlos?
- 15. ¿Almacenar datos estáticos en una matriz o en una base de datos?
- 16. SQLite cómo declarar como matriz de bytes?
- 17. ¿Cómo almacenar una base de datos dentro de un Arduino?
- 18. ¿Crear una base de datos desde otra base de datos?
- 19. ¿Cómo puedo almacenar y recuperar un blob de sqlite
- 20. ¿Cómo actualizar una base de datos SQLite y NO perder todos los datos existentes?
- 21. ¿Cómo puedo usar y acceder a una base de datos SQLite usando PHP y Wamp Server?
- 22. ¿Es mejor almacenar datos en una base de datos plist o Sqlite?
- 23. ¿Cuál es la mejor manera de conectar y usar una base de datos sqlite desde C#
- 24. ¿Cómo eliminar desde una base de datos?
- 25. ¿Cómo inserto el valor de fecha y hora en una base de datos SQLite?
- 26. ¿Cómo actualizar una base de datos SQLite con una consulta de búsqueda y reemplazo?
- 27. Obtener un objeto de imagen de una matriz de bytes
- 28. cómo obtener el valor de la base de datos a una matriz de cadenas en Android (base de datos SQLite)
- 29. Forma óptima de almacenar valores de fecha y hora en la base de datos SQLite (Delphi)
- 30. Cómo convertir una base de datos postgres a sqlite
Si no se realiza nada especial, entonces DB se almacena en la memoria interna del dispositivo. Por lo tanto, obtendrá alrededor de 30-60 MB de espacio libre para usar con su base de datos. Si planea almacenar muchas imágenes de un tamaño normal (varios Mpixels), probablemente debería almacenar imágenes en la tarjeta SD como archivos y poner una ruta de archivo de cadena en su base de datos. –