繁体   English   中英

从另一个具有太多工作表的excel创建一个新的工作表excel文件

[英]Creating a new one sheet excel file from another excel which has too many sheets

当我运行以下代码时,出现此错误。

org.apache.poi.openxml4j.exceptions.NotOfficeXmlFileException:提供的数据似乎是原始XML文件。 不支持Office 2003 XML等格式

    OPCPackage pkg = OPCPackage.open(filename);
    XSSFReader r = new XSSFReader( pkg );
    SharedStringsTable sst = r.getSharedStringsTable();
    XMLReader parser = fetchSheetParser(sst);

    InputStream sheet2 = r.getSheet("rId7");
    wb = new XSSFWorkbook(sheet2);

如果我写的话效果很好

   wb = new XSSFWorkbook(pkg);

装的

   wb = new XSSFWorkbook(sheet2);

但这会根据我以前的Excel创建所有工作表。 我不要 因为我以前的excell非常大。

有没有一种方法可以从旧的excel表格(相对ID为“ rId7”)中仅创建一个表格excel文件?

new XSSFWorkbook()需要一个.xlsx文件作为输入。 这是一个具有.XLSX结构的zip文件。 如果您仅提供原始XML,它将无法正常工作。 您可以尝试打开所需的文件,然后删除您不想保留的图纸。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM