poi导出xlsx文件后,打开报“因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。”的解决方法

Posted 秋9

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了poi导出xlsx文件后,打开报“因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。”的解决方法相关的知识,希望对你有一定的参考价值。

【现象】

代码如下:

public static void main(String[] args) throws IOException {
   Date now=new Date();
   SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
   String localname=dateFormat.format(now);
   String xlsxPath = "d:\\\\"+ localname + ".xlsx";
   HSSFWorkbook workBook = new HSSFWorkbook();
   OutputStream fos = null;
   try {//增加一个Sheet的对象
      HSSFSheet sheet = workBook.createSheet("sheet1");
      HSSFRow row = sheet.createRow(0);
      row.createCell(0).setCellValue("aaaaaaaa");
      fos = new FileOutputStream(xlsxPath);
   } catch (FileNotFoundException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
   }
   workBook.write(fos);
   fos.close();
}

【解决方法】

 

public static void main(String[] args) throws IOException {
   Date now=new Date();
   SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
   String localname=dateFormat.format(now);
   String xlsxPath = "d:\\\\"+ localname + ".xlsx";
   XSSFWorkbook workBook = new XSSFWorkbook();
   OutputStream fos = null;
   try {//增加一个Sheet的对象
      XSSFSheet sheet = workBook.createSheet("sheet1");
      XSSFRow row = sheet.createRow(0);
      row.createCell(0).setCellValue("aaaaaaaa");
      fos = new FileOutputStream(xlsxPath);
   } catch (FileNotFoundException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
   }
   workBook.write(fos);
   fos.close();
}

以上是关于poi导出xlsx文件后,打开报“因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。”的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

急!!!java用poi导出excel文件,打开导出的文件时报错“文件错误,数据可能丢失”

java导出excel,excel打不开,报文件格式无效,怎么解决!

springboot使用poi导出数据生成excel(.xlsx)文件

Apache POI 4.0.1版本写入普通Excel文件(兼容 xls 和 xlsx)

在 weblogic 上使用 apache poi 3.13 导出 xlsx:文件格式或扩展名无效

java实现文件批量导入导出实例(兼容xls,xlsx)