Hola quiero exportar mis datos de la base de datos en formato CSV para mi aplicación de Android. ¿Cómo puedo hacer esto? Cualquier cuerpo me ayuda? Gracias por adelantado.Cómo convertir registros de base de datos en un archivo csv en android?
Respuesta
Hola hacer como esto ....
package com.my.CSVcreation;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class CSVCreationActivity extends Activity {
TextView empidtxt,empnametxt,empsaltxt;
EditText empidet,empnameet,empsalet;
Button insetbt,viewbt;
SQLiteDatabase myDatabase=null;
String DataBase_Name="employeedata";
String Table_Name="employeedetails";
Cursor c1,c2;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
empidtxt=(TextView)findViewById(R.id.tv1);
empnametxt=(TextView)findViewById(R.id.tv2);
empsaltxt=(TextView)findViewById(R.id.tv3);
empidet=(EditText)findViewById(R.id.et1);
empnameet=(EditText)findViewById(R.id.et2);
empsalet=(EditText)findViewById(R.id.et3);
insetbt=(Button)findViewById(R.id.bt1);
viewbt=(Button)findViewById(R.id.bt2);
try {
myDatabase=this.openOrCreateDatabase(DataBase_Name, MODE_PRIVATE, null);
System.out.println("databse has been creates.....");
myDatabase.execSQL("create table if not exists " + Table_Name + "(empid integer(10),empname varchar(50),empsal integer(10))");
System.out.println("table has been created.....");
c1 = myDatabase.rawQuery("select * from " + Table_Name, null);
c1.moveToFirst();
int count1 = c1.getCount();
System.out.println("columns --->" + count1);
if (count1 == 0) {
myDatabase.execSQL("insert into "+Table_Name+ "(empid,empname,empsal)" +"values(101,'asha',20000)");
System.out.println("data base has been inserted.....");
}
c2 = myDatabase.rawQuery("select * from " + Table_Name, null);
c2.moveToFirst();
int count2 = c2.getCount();
System.out.println("columns --->" + count2);
final int column1 = c2.getColumnIndex("empid");
final int column2 = c2.getColumnIndex("empname");
final int column3 = c2.getColumnIndex("empsal");
insetbt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (c2 != null) {
do {
int id = c2.getInt(column1);
String name = c2.getString(column2);
int salary = c2.getInt(column3);
System.out.println("empID --> "+id);
System.out.println("empNAME --> "+name);
System.out.println("empsalalry --> "+salary);
} while(c2.moveToNext());
}
}
});
viewbt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
new ExportDatabaseCSVTask().execute("");
} catch(Exception ex) {
Log.e("Error in MainActivity",ex.toString());
}
}
});
}
catch(SQLException ex) { ex.printStackTrace(); }
/*finally {
if (myDB != null) { myDB.close(); }
}*/
}
public class ExportDatabaseCSVTask extends AsyncTask<String, Void, Boolean> {
private final ProgressDialog dialog = new ProgressDialog(CSVCreationActivity.this);
@Override
protected void onPreExecute() {
this.dialog.setMessage("Exporting database...");
this.dialog.show();
}
protected Boolean doInBackground(final String... args) {
File dbFile = getDatabasePath("myDatabase.db");
System.out.println(dbFile); // displays the data base path in your logcat
File exportDir = new File(Environment.getExternalStorageDirectory(), "");
if (!exportDir.exists()) { exportDir.mkdirs(); }
File file = new File(exportDir, "myfile.csv");
try {
file.createNewFile();
CSVWriter csvWrite = new CSVWriter(new FileWriter(file));
Cursor curCSV = myDatabase.rawQuery("select * from " + Table_Name,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;
}
}
protected void onPostExecute(final Boolean success) {
if (this.dialog.isShowing()) { this.dialog.dismiss(); }
if (success) {
Toast.makeText(CSVCreationActivity.this, "Export successful!", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(CSVCreationActivity.this, "Export failed", Toast.LENGTH_SHORT).show();
}
}
}
Y obtendrá CSVReader y el archivo desde el sitio CSVWriter https://code.google.com/p/secrets-for-android/source/checkout siguiente. Todo lo mejor.
No se olvide de añadir el permiso para el archivo de manifiesto <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
donde se guardó el archivo exportado. Puede indicar la ruta exacta donde se guardó el archivo en el emulador – yogi
El archivo se guardará en su tarjeta sd como nombre de pila. Ejemplo: myfile.csv – malavika
¿Cómo lo escribo para que todo lo que se ingrese en 'empidtet', 'empnameet' y 'expsalet' se muestre en myfile.csv? – PaulH
- 1. Convertir archivo .db de base de datos en .csv
- 2. Cómo abrir un archivo csv en Android
- 3. ¿Cómo creo un archivo CSV desde la base de datos en Python?
- 4. Lectura de datos CSV de un archivo
- 5. Cómo transportar un conjunto de datos en un archivo csv?
- 6. convertir datos csv a DataTable en VB.net
- 7. ¿Cómo leer csv en el conjunto de registros en numpy?
- 8. Android: ¿Cómo escribir nueva línea en un archivo CSV?
- 9. Convertir archivo txt a csv en powershell
- 10. ¿Cómo leer el archivo csv en android?
- 11. Convertir archivo XML a CSV en java
- 12. Importación de un archivo CSV en una tabla de base de datos sqlite3 usando Python
- 13. Convertir archivo CSV a XML
- 14. Cargar un archivo CSV masivo a la base de datos de SQL Server
- 15. Cómo analizar el archivo CSV en la aplicación de Android?
- 16. Base de datos C# en un archivo
- 17. ¿Completa la base de datos de Android desde el archivo CSV?
- 18. en los carriles, la forma de devolver los registros como un archivo csv
- 19. ¿Cómo convertir el archivo NSMutableArray a CSV en iPhone?
- 20. Convertir matriz en csv
- 21. Cómo cargar datos de un archivo de texto en una base de datos PostgreSQL?
- 22. Escribir en un archivo CSV en Node.js
- 23. Convertir CSV en XLS
- 24. Convertir la base de datos a CSV y guardar el archivo en la carpeta en el servidor
- 25. importar archivo csv/excel en la base de datos sql asp.net
- 26. Cómo crear una base de datos h2 desde algunos campos de un archivo CSV
- 27. ¿Convertir de base de datos/Excel/CSV a accesorios de datos YAML?
- 28. lectura de un archivo CSV en MATLAB
- 29. ¿Cómo puedo extraer campos de un archivo CSV en Perl?
- 30. importar grandes CSV en la base de datos MySQL
posible duplicado de [Convertir la base de datos .DB presentar en .csv] (http://stackoverflow.com/questions/8665057/convert-database-db -file-into-csv) –