Android Studio,CSV导出和更改定界符

时间:2018-12-09 23:02:07

标签: android-sqlite export-to-csv

我一直在尝试找出如何向我现有的android应用添加导出功能,以便用户可以导出到 Excel文档(CSV)。但是,在我的数据库中,我的零件具有多个相关零件号,并且在该数据库中用逗号隔开,因此不用说,当导出通过但字段不存在时,这是很痛苦的他们应该在哪里。我想尝试用括号或类似的方式封装零件编号,当出现新字段时,它仍然位于正确的位置。这是我已经完成的代码,非常感谢在正确方向上的任何指针。谢谢!

LocalDatabase dbhelper = new LocalDatabase(getApplicationContext());
    File exportDir = new File(Environment.getExternalStorageDirectory(), "");
    Context context = getApplicationContext();
    String myMsg = "EXPORTED";
    String myMsg_2 = "Saved in \nDownload > Reference_Export.csv";
    int duration = Toast.LENGTH_LONG;

    if (!exportDir.exists())
    {
        exportDir.mkdirs();
    }

    File file = new File(exportDir, "Download/Reference_Export.csv");
    try {
        file.createNewFile();
        CSVWriter csvWrite = new CSVWriter(new FileWriter(file));
        SQLiteDatabase db = dbhelper.getReadableDatabase();
        Cursor curCSV = db.rawQuery("SELECT * FROM my_qrl",null);
        csvWrite.writeNext(curCSV.getColumnNames());
        while(curCSV.moveToNext()) {
            String arrStr[] ={
                    curCSV.getString(1), //item name
                    curCSV.getString(2), // pn
                    curCSV.getString(3), // nsn
                    curCSV.getString(4), // additional part numbers
            };

            csvWrite.writeNext(arrStr);
        }
        csvWrite.close();
        curCSV.close();

0 个答案:

没有答案