zoukankan      html  css  js  c++  java
  • poi解析excel出现格式不正确

    后缀为xlsx的excel做系统导入时出现bug:

    Strict OOXML isn't currently supported, please see bug #57699

    为了同时兼容03、07及更高版本的excel,修改了excel的版本,同时导入的时候发现出现错误,查阅资料发现后缀是xlsx还会分两个格式ole2和ooxml两种。

    百度后的解决办法有

    public static Workbook create(InputStream in) throws IOException,InvalidFormatException {
    if (!in.markSupported()) { //hasPOIFSHeader和hasOOXMLHeader的要求,inputStream must support mark and reset, or be a PushbackInputStream
    in = new PushbackInputStream(in, 8);
    }
    if (POIFSFileSystem.hasPOIFSHeader(in)) { //后缀是xlsx但是是ole2格式的或更低版本
    return new HSSFWorkbook(in);
    }
    if (POIXMLDocument.hasOOXMLHeader(in)) { //后缀是xlsx但是是OOXML格式的或更高版本
    return new XSSFWorkbook(OPCPackage.open(in));
    }
    throw new IllegalArgumentException("你的excel版本目前poi解析不了");
    }

    但是本人试过,并没有解决,(poi 3.17)。

    后把excel的格式修改了就好了。。。

    第一种是好用的,第二种是之前怎么试都没好使的。具体原因。。。没查到。。。希望以后更新。。。

  • 相关阅读:
    每天更新股票日数据
    爬取赶集网类似数据的几个小技巧
    爬取赶集网二手物品下所有物品的信息
    web.xml常用元素
    web.xml中JSP配置及 EL表达式
    JSP 隐藏对象
    第四章 JSP语法
    1.JSP 简介及工作原理
    js闭包
    面试心经之题目二
  • 原文地址:https://www.cnblogs.com/qiujiababy/p/9367118.html
Copyright © 2011-2022 走看看