Excel说:“ Excel文件不是有效的文件扩展名或格式类型...”

时间:2019-06-07 17:34:55

标签: java apache-poi excel-2019

我正在使用apache.poi制作一个excel文件,但是当我尝试使用Microsoft Excel打开时使用简单的Java代码生成它时,它说无法打开此文件,因为我的文件格式或扩展名是无效。

我正在使用最新的poi和Micrisoft Office 2019 32位。

package com.company;

import java.io.*;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;


public class Main {

    public static void main(String[] args) throws FileNotFoundException, IOException{
        Workbook wb = new HSSFWorkbook();

        // An output stream accepts output bytes and sends them to sink.
        OutputStream fileOut = new FileOutputStream("Geek.xlsx");

        // Creating Sheets using sheet object
        Sheet sheet1 = wb.createSheet("Array");
        Sheet sheet2 = wb.createSheet("String");
        Sheet sheet3 = wb.createSheet("LinkedList");
        Sheet sheet4 = wb.createSheet("Tree");
        Sheet sheet5 = wb.createSheet("Dynamic Programing");
        Sheet sheet6 = wb.createSheet("Puzzles");


        System.out.println("Sheets Has been Created successfully");

        wb.write(fileOut);
    }
}

我构建了它,可以正常工作,但是文件错误!我可能做错了什么?

2 个答案:

答案 0 :(得分:2)

您必须像这样使用。

Workbook workbook = new XSSFWorkbook(); // <---用于创建Geek.xlsx文件

Workbook workbook = new HSSFWorkbook(); // <---用于创建Geek.xls文件

答案 1 :(得分:0)

至少如果有人遇到这个问题,我已经解决了使用* .xls扩展名更改Java代码中文件扩展名的问题(此格式类型是较早的excel文件类型),它看起来很迷人。

U.i .:谢谢Avi Meltser