В настоящее время я использую SuperCSV (v 2.4.0) для экспорта данных. Я застрял с проблемой ниже.
※Моя проблема: - Мой заголовок CSV имеет 9 столбцов - Существует строка, в которой отсутствует разделитель-запятая (,) между двумя полями, поэтому эта строка становится строкой из 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? может кто поможет разобраться в причине? потому что я прочитал из приведенного ниже обсуждения, возможно, не только я столкнулся с проблемой беспорядка csv, но и кто-то тоже. Неправильный CSV приводит к исключению