Estoy desarrollando una aplicación en la que estoy usando la base de datos y almacenando ese archivo de base de datos con extensión .db en sdcard. Ahora quiero convertir este "archivo db en .csv", por lo que el usuario puede abrir ese archivo .csv y puede fácilmente ver todos sus datos ...Convertir archivo .db de base de datos en .csv
5
A
Respuesta
9
Oye, tengo la respuesta a mi propia pregunta: descargué una biblioteca OpenCSV y agregué el archivo opencsv.jar a mi aplicación y el siguiente código:
class ExportDatabaseCSVTask extends AsyncTask<String, Void, Boolean>{
private final ProgressDialog dialog = new ProgressDialog(MyDatabaseActivity.this);
// can use UI thread here
@Override
protected void onPreExecute(){
this.dialog.setMessage("Exporting database...");
this.dialog.show();
}
// automatically done on worker thread (separate from UI thread)
protected Boolean doInBackground(final String... args){
File dbFile=getDatabasePath("mydb.db");
// DbClass DBob = new DbClass(MyDatabaseActivity.this);
File exportDir = new File(Environment.getExternalStorageDirectory(), "");
if (!exportDir.exists()) {
exportDir.mkdirs();
}
File file = new File(exportDir, "excerDB.csv");
try {
file.createNewFile();
CSVWriter csvWrite = new CSVWriter(new FileWriter(file));
//SQLiteDatabase db = DBob.getReadableDatabase();
Cursor curCSV=mydb.rawQuery("select * from " + TableName_ans,null);
// Cursor curCSV = db.rawQuery("SELECT * FROM table_ans12",null);
csvWrite.writeNext(curCSV.getColumnNames());
while(curCSV.moveToNext()){
String arrStr[] ={curCSV.getString(0),curCSV.getString(1)};
/*curCSV.getString(2),curCSV.getString(3),curCSV.getString(4)*/
csvWrite.writeNext(arrStr);
}
csvWrite.close();
curCSV.close();
return true;
} catch(SQLException sqlEx) {
Log.e("MainActivity", sqlEx.getMessage(), sqlEx);
return false;
} catch (IOException e) {
Log.e("MainActivity", e.getMessage(), e);
return false;
}
}
// can use UI thread here
@Override
protected void onPostExecute(final Boolean success) {
if (this.dialog.isShowing()) {
this.dialog.dismiss();
}
if (success) {
Toast.makeText(MyDatabaseActivity.this, "Export successful!", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MyDatabaseActivity.this, "Export failed", Toast.LENGTH_SHORT).show();
}
}
}
Cuestiones relacionadas
- 1. Cómo convertir registros de base de datos en un archivo csv en android?
- 2. convertir datos csv a DataTable en VB.net
- 3. Cargando un archivo CSV en Core Data managed sqlite db
- 4. Convertir archivo CSV a XML
- 5. ¿Convertir de base de datos/Excel/CSV a accesorios de datos YAML?
- 6. Convertir archivo txt a csv en powershell
- 7. Convertir archivo XML a CSV en java
- 8. Convertir archivo CHM a CSV o SQL
- 9. importar archivo csv/excel en la base de datos sql asp.net
- 10. cómo convertir un modelo de base de datos relacional existente en un modelo adecuado para una base de datos sin sql (como Mongo DB o Amazon Dynamo DB)
- 11. Convertir la base de datos a CSV y guardar el archivo en la carpeta en el servidor
- 12. Convertir la base de datos de Postgres en una base de datos espacial
- 13. Lectura de datos CSV de un archivo
- 14. Base de datos C# en un archivo
- 15. Convertir matriz en csv
- 16. importar grandes CSV en la base de datos MySQL
- 17. Python - convertir el archivo csv a JSON
- 18. Importación de un archivo CSV en una tabla de base de datos sqlite3 usando Python
- 19. Mejor manera de convertir los datos CSV a dict
- 20. Cómo convertir el archivo de base de datos H2Database a la base de datos MySQL archivo .sql?
- 21. Convertir CSV en XLS
- 22. Convertir MDB a CSV
- 23. Convertir RDA a csv
- 24. ¿Cómo convertir el archivo NSMutableArray a CSV en iPhone?
- 25. ¿Cómo importar datos CSV/TSV a Couch DB?
- 26. Cargar archivo CSV ubicado en el classpath para la base de datos H2
- 27. ¿Cómo creo un archivo CSV desde la base de datos en Python?
- 28. Manera eficiente de importar muchos archivos csv en PostgreSQL db
- 29. Importar datos CSV en la base de datos de Django administración
- 30. Generar autodiagrama de base de datos para PHPMyadmin DB?
cómo podría poner cada mes los registros en la nueva columna es .csv o excel. p.ej. en 'columnt A' hay registros del mes de enero y en 'Columna B' hay registros de febrero ..... – Pritesh