У меня есть база данных со многими таблицами.Я хотел бы экспортировать все таблицы в разные файлы .csv.Например, таблица 1 будет генерировать файл 1.csv.Таблица 2, файл 2.csv.И т.д.
Этот метод работает нормально, но я экспортирую только все таблицы в один файл .csv.
public void exportData (View view) {
File dbFile = getDatabasePath("myDataBase.db");
Helper dbhelper = new Helper(getApplicationContext());
File exportDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
if (!exportDir.exists())
{
exportDir.mkdirs();
}
File file = new File(exportDir, tableName);
try
{
file.createNewFile();
CSVWriter csvWriter = new CSVWriter(new FileWriter(file));
SQLiteDatabase db = dbhelper.getReadableDatabase();
Cursor curCSV = db.rawQuery("SELECT * FROM " + tableName,null);
csvWriter.writeNext(curCSV.getColumnNames());
while(curCSV.moveToNext())
{
String arrStr[] ={curCSV.getString(0),curCSV.getString(1)};
csvWriter.writeNext(arrStr);
}
csvWriter.close();
curCSV.close();
}
catch(Exception sqlEx)
{
Log.e("MainActivity", sqlEx.getMessage(), sqlEx);
}
Toast.makeText(this, "File created!", Toast.LENGTH_SHORT).show();
}
Я хотел бы экспортировать все таблицы в разные файлы .csv, по одному для каждой таблицы, с именами таблиц + расширение .csv.
Не могли бы вы научить меня, как это сделать?