java - 使用 openCSV 导出数据时是否可以删除分隔符?

标签 java android opencsv

在我的应用程序中,我使用 opencsv 将数据从数据库表导出到 .csv 文件。它工作得很好。但是客户需要那些没有分隔符逗号的书面行。这可能吗?

我考虑并尝试使用 CSVParserWriter.DEFAULT_SEPARATOR = ''; 更改分隔符,但 char 迭代器不能为空。

下面是我的exportData方法

private void exportData() {

        DatabaseHelper dbhelper = new DatabaseHelper(getApplicationContext());
        File exportDir = new File(Environment.getExternalStorageDirectory(), "kerailymestari_tiedostot");
        if (!exportDir.exists())
        {
            exportDir.mkdirs();
        }

        File file = new File(exportDir, kerailyNimi+".csv");
        try
        {
            file.createNewFile();
            CSVWriter csvWrite = new CSVWriter(new FileWriter(file), CSVParserWriter.DEFAULT_SEPARATOR, CSVWriter.NO_QUOTE_CHARACTER, CSVWriter.NO_ESCAPE_CHARACTER, CSVWriter.DEFAULT_LINE_END);
            SQLiteDatabase db = dbhelper.getReadableDatabase();
            Cursor curCSV = db.rawQuery("SELECT * FROM tuotteet WHERE KID = " + kid,null);
            //csvWrite.writeNext(curCSV.getColumnNames());
            while(curCSV.moveToNext())
            {
                //Which column you want to exprort
                String arrStr[] ={curCSV.getString(1),curCSV.getString(2), curCSV.getString(3), curCSV.getString(4)};
                csvWrite.writeNext(arrStr);
            }
            csvWrite.close();
            curCSV.close();
        }
        catch(Exception sqlEx)
        {
            Log.e("Results", sqlEx.getMessage(), sqlEx);
        }
    }

需要更改该代码,以便删除或更改分隔符。或者有更好的解决方案吗?

最佳答案

我不明白你为什么要继续使用 openCsv。但是如果你想进一步做,只需将列中的字符串相互连接并创建一个长度为 1 的数组。像下面这样的东西应该可以工作:

String arrStr[] ={curCSV.getString(1) + curCSV.getString(2) + curCSV.getString(3) +  curCSV.getString(4)};
            csvWrite.writeNext(arrStr);

请注意使用 + 运算符而不是原来的 , 进行连接。

关于java - 使用 openCSV 导出数据时是否可以删除分隔符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56645383/

相关文章:

java - 如果 autocommit 设置为 true,我的批处理是否真的按预期执行?

java - 如何从 Firebase 实时数据库获取数据并将其显示在微调器中?

Android TextView 文本不会居中

java - 使用java将数据从一个csv文件复制到另一个csv文件

java - 运行我的java代码时得到 "Program has stopped "

java - JSONObject 到 String Android

Android AdMob FULL XML NAMESPACE 在任何地方发布?

没有Toolbar的Android CollapsingToolbarLayout停在某个点而不是完全关闭

android - CSV 缺失值

java - 如何将 CSV 文件中的日语字段读取到 java beans 中?