Supercsv:输出csv文件有一个混乱的行

时间:2016-08-10 02:19:20

标签: csv export-to-csv supercsv

我目前正在使用SuperCSV(v 2.4.0)导出数据。 我陷入了以下问题。

※我的问题: - 我的CSV标题有9列 - 有一行在两个字段之间缺少逗号dilimiter(,),因此该行成为8列线 - 混乱的行是随机出现的,并不是每次导出的完全相同的行。

※这里是我的代码: ①CSV写入功能 //忽略

    stmt = con.prepareStatement(sql);
    rs = stmt.executeQuery();

    // obmitting
    // ............

    fos = new FileOutputStream(folderPath + "/" + FILE_NAME);
    osw = new OutputStreamWriter(fos, "EUC-JP");
    beanWriter = new CsvBeanWriter(osw, csvType);
    beanWriter.writeHeader(this.CSV_HEADER);

    while(rs.next()) {
        AttachmentsBean bean = new AttachmentsBean();
        bean.setCompDispId(pMng.getCompDispId());
        bean.setFileId(rs.getString(1));
        bean.setDocumentId(rs.getString(2));
        bean.setFileName(rs.getString(3));
        bean.setDiscription(rs.getString(4));
        bean.setFileSize(rs.getString(5));
        bean.setFilePath(rs.getString(6));
        bean.setMimetype(rs.getString(7));
        bean.setFileOrder(rs.getString(8));
        progressCount++;
        //出力
        beanWriter.write(bean, this.CSV_HEADER);

    }

    //CSV出力終了
    IOUtils.closeQuietly(beanWriter);
    IOUtils.closeQuietly(osw);
    IOUtils.closeQuietly(fos);

    //文字変換
    CommonUtil.convertFile(folderPath, folderPath +"/"+ FILE_NAME);

②ConvertFile辅助函数 此功能将特殊字符从EUC转换为UTF-8

※我的问题是,我的问题是由superCSV bug引起的吗?任何人都可以帮助找出原因吗? 因为我从下面的讨论中读到了,也许我不仅遇到了陷入困境的csv问题,而且还有一些人也这么做了。 Messed up CSV leads to Exception

0 个答案:

没有答案