"file.csv" 的格式和扩展名不匹配

The fomat and extension of "file.csv" doesn't match

我正在尝试使用如下数据创建 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 文件中正确显示数据。

我已经通过在 Notepad++ 中打开验证了 csv 文件,它也以不可理解的语言而不是逗号分隔显示。

请建议我如何解决上述问题。

POI 写入二进制 Excel 文件。您的扩展名“csv”是错误的。它应该是“xlsx”,因为您使用 XSSFWorkbook。