我正在尝试创建包含以下数据的csv文件
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet("Sheet1");
String fileLocation = null;
try {
// Set the header columns name for worksheet
createHeader(workbook, sheet);
// populate the data
createWorkbookRows(ker, sheet, kerList, AerList);
String tempDir = System.getProperty("java.io.tmpdir");
File file = new File(tempDir);
fileLocation = file.getAbsolutePath() + FileSystems.getDefault().getSeparator() + "MyData.csv";
FileOutputStream outputStream = new FileOutputStream(fileLocation);
workbook.write(outputStream);
}catch(Exception e){
}
使用上面的代码,我可以生成csv文件,但当我试图打开文件时,会显示下面的错误
当我点击 yes
它在excel文件中正确显示数据。
我已通过在中打开来验证csv文件 Notepad++
此外,它是在不可理解的语言,而不是逗号分隔显示。
请建议我如何解决上述问题。
1条答案
按热度按时间d5vmydt91#
poi编写一个二进制excel文件。您的扩展名“csv”错误。它应该是“xlsx”,因为您使用的是XSSF工作簿。