esportre sqlite in csv

im cercando di prendere i dati dal mio database sqlite e scrivere in file csv e submit le informazioni di posta elettronica al momento della scrittura.i hanno solo una tabella con 3 colonne nel database.i hanno DBAdapter e una class che hanno il button che l'utente deve premere per poter esportre i dati.

Ecco il codice che ho provato Exportdata.java

  • Come pizzicare l'image zoom nell'image zoom android?
  • Android SDK di Facebook - Ottieni gli events degli utenti
  • Acquisto Android in App "L'object che hai richiesto non è disponibile per l'acquisto" Errore
  • Il widget di controllo di potenza mostrato per un breve momento quando aggiorna il mio widget tramite AppWidgetManager, qual è il problema?
  • Tempo di logging massimo traceview?
  • Android WebView scorri verso il basso
  • try { root = Environment.getExternalStorageDirectory(); Log.i(TAG,"path.." +root.getAbsolutePath()); //check sdcard permission if (root.canWrite()) { File fileDir = new File(root.getAbsolutePath()+"/fun/"); fileDir.mkdirs(); // Log.d("DATABASE", db.getAllBYname()); File file= new File(fileDir, "itisfun.csv"); FileWriter filewriter = new FileWriter(file); BufferedWriter out = new BufferedWriter(filewriter); out.write("I m enjoying......dude..............." ); out.close(); } } catch (IOException e) { Log.e("ERROR:---", "Could not write file to SDCard" + e.getMessage()); } 

    Questo codice crea il file in SDcard ma il problema è che non posso fare questo per prendere i dati del database sqlite e scrivere nel file come mostrato sul code.im bloccato per favore mi aiuti con esempio o modificare il mio codice con la soluzione giusta.

  • Ottenere i tweet con hashtag specifici dalla timeline dell'utente utilizzando il tessuto in android
  • Il modo migliore per la condivisione sociale in Android
  • Stop Android TabLayout caricare la prossima pagina automaticamente
  • Come fare la voce di menu di ricerca in una vista completa nella barra delle azioni usando l'abs
  • Come convertire un LinearLayout in image?
  • Errore: ANDROID_HOME non è impostato e il command "android" non è nel tuo PATH. È necessario soddisfare alless una di queste condizioni.
  • One Solution collect form web for “esportre sqlite in csv”

    Utilizzo questa routine per scaricare un database SQLite in un file sulla scheda SD in formato CSV:

     private Boolean backupDatabaseCSV(String outFileName) { MyLog.d(TAG, "backupDatabaseCSV"); Boolean returnCode = false; int i = 0; String csvHeader = ""; String csvValues = ""; for (i = 0; i < GC.CURCOND_COLUMN_NAMES.length; i++) { if (csvHeader.length() > 0) { csvHeader += ","; } csvHeader += "\"" + GC.CURCOND_COLUMN_NAMES[i] + "\""; } csvHeader += "\n"; MyLog.d(TAG, "header=" + csvHeader); dbAdapter.open(); try { File outFile = new File(outFileName); FileWriter fileWriter = new FileWriter(outFile); BufferedWriter out = new BufferedWriter(fileWriter); Cursor cursor = dbAdapter.getAllRows(); if (cursor != null) { out.write(csvHeader); while (cursor.moveToNext()) { csvValues = Long.toString(cursor.getLong(0)) + ","; csvValues += Double.toString(cursor.getDouble(1)) + ","; csvValues += Double.toString(cursor.getDouble(2)) + ","; csvValues += "\"" + cursor.getString(3) + "\","; csvValues += Double.toString(cursor.getDouble(4)) + ","; csvValues += Double.toString(cursor.getDouble(5)) + ","; csvValues += "\"" + cursor.getString(6) + "\","; csvValues += Double.toString(cursor.getDouble(7)) + ","; csvValues += Double.toString(cursor.getDouble(8)) + ","; csvValues += Double.toString(cursor.getDouble(9)) + "\n"; out.write(csvValues); } cursor.close(); } out.close(); returnCode = true; } catch (IOException e) { returnCode = false; MyLog.d(TAG, "IOException: " + e.getMessage()); } dbAdapter.close(); return returnCode; } 

    GC è la mia class di costanti globali che tra l'altro contiene i nomi delle colonne della tabella. I nomi delle colonne vengono utilizzati per creare la row dell'intestazione nel file CSV. Il getAllRows si trova nella scheda del database e restituisce tutte le righe della tabella. Mentre le discariche tutte le righe che sono state restituite. I valori lunghi sono separati da virgola ei valori di text sono citati e separati da una virgola. Il MyLog.d fa un Log.d nella modalità di prova e non fa nulla quando in modalità di produzione. Il dbAdapter è definito al di fuori della function come variabile globale:

     DatabaseAdapter dbAdapter = null; 

    Viene inizializzato in onCreate come:

     dbAdapter = new DatabaseAdapter(getApplicationContext()); 

    Il dbAdapter è utilizzato in più funzioni nell'attività. Se definisci globalmente la propria scheda di database, assicurati di associare each dbAdapter.open () con un dbAdapter.close () each volta che lo si utilizza. Inoltre, non dimenticate di chiudere each cursore che apri.

    Nota: csvValues ​​è una concatenazione delle colonne restituite in ciascuna row di SQLite. Per each row restituita nel cursore SQLite, csvValues ​​viene scritto come una row nella tabella CSV.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.