J'essaie de sauvegarder un sqlite db android. si je cours le code un dossier est créé comme donné dans le programme. Mais ce dossier est vide, aidez-moi svp à sauvegarder ma base de données et comment je peux l'afficher. Suis en utilisant Firefox sqlite manager.Aide-moi à sauvegarder ma base de données quand je clique sur un bouton de sauvegarde db.Comment sauvegarder une base de données SQLite?
Mon code:
public void exportDatabase(String databaseName) {
try {
File sd = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
if (sd.canWrite()) {
String currentDBPath = "//data//"+getPackageName()+"//databases//"+databaseName+"";
String backupDBPath = "PRIM.sqlite";
File currentDB = new File(data, currentDBPath);
File backupDB = new File(sd, backupDBPath);
System.out.println("@@ Enter 12222222222222");
if (currentDB.exists()) {
FileChannel src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
System.out.println("@@ Enter 2");
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
Avez-vous demandé l'autorisation d'écrire sur un stockage externe? Imprimez également les chemins 'currentDB' et' backupDB' et assurez-vous qu'ils sont corrects. –
try https://stackoverflow.com/a/13504743/4146722 –
Copie possible de [sauvegarde/restauration Android: comment sauvegarder une base de données interne ?] (https://stackoverflow.com/questions/5282936/android-backup-restore-how-to-backup-an-internal-database) – araknoid