簡體   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