首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WorkbookFactory.create(输入流)引发StringIndexOutOfBounds异常

WorkbookFactory.create(输入流)引发StringIndexOutOfBounds异常
EN

Stack Overflow用户
提问于 2018-06-21 06:05:29
回答 1查看 1.1K关注 0票数 0

我无法使用Apache读取xlsm文件。我得到的错误java.lang.StringIndexOutOfBoundsException: String索引超出了范围:-1。

我的程序看起来是:

代码语言:javascript
复制
FileInputStream file=new FileInputStream(new File(path));
out.print("aaaaaa");
Workbook workbook=null;out.print("1111111");
workbook=WorkbookFactory.create(file);
out.print("222222");

22222永远不会打印,我得到了例外。aaaaaaa和111111版。

我已经按照Error while reading an xlsm file using POI Framework in Java下载了所有最新的jars,我已经尝试了XSSFWorkbook。我已经尝试过传递File,而不是像在一些这样的答案中所看到的FileInputStream。

这是一个只读的xlsm,我的Java版本1.7。

当我尝试使用一个新的xlsm文件时,这个程序运行得很好,在其他只读xlsm文件(也是受保护的,但有不同的模板)也很好。

这是否意味着,我的特定xlsm文件模板可能有问题?还是我还遗漏了什么?有人能帮我解决这个问题吗?

更新:我把我的代码块放在一个小java类中,直接复制到服务器到我的web应用程序文件夹之外的文件夹中,它在那里工作得很好.会不会是与svn相关的问题?

EN

回答 1

Stack Overflow用户

发布于 2018-06-25 09:58:21

我的程序现在运转良好。问题是,在我的测试服务器中,poi、poi-ooxml和poi-ooxml模式的jars分散在几个文件夹中。因此,我删除了所有这些,只在单一路径中添加了最新版本的jars(3.17),添加到类路径中,也添加了jars依赖项(以防万一),一切都很好。希望这能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50961408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档