"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。
我正在尝试使用如下数据创建 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。