Java POI - 无法访问Win 2003 Server上的xls文件

时间:2016-07-14 20:50:08

标签: java excel apache-poi

我有一个小应用程序。它需要xls文件并将其转换为xml。一切正常,我的两台本地机器赢得xp 32(java 7)并赢得7 64(java 8)但是当我在win 2003服务器上启动app时,事情变得有点奇怪了。

在胜利服务器上

它给了我错误:

org.apache.poi.EmptyFileException: The supplied file was empty (zero bytes long)
at org.apache.poi.poifs.filesystem.NPOIFSFileSystem.<init>(NPOIFSFileSystem.java:218)

at org.apache.poi.poifs.filesystem.NPOIFSFileSystem.<init>(NPOIFSFileSystem.java:168)

at Parser.xlsToXml(Parser.java:43)
at Parser.<init>(Parser.java:28)

你可以看到我使用java poi lib来解析xls。

这是发生错误的代码的一部分:

Biff8EncryptionKey.setCurrentUserPassword(params.get("pass"));
NPOIFSFileSystem fs = new NPOIFSFileSystem(new File(params.get("xls_location")), true);//string 43!!!

在我尝试访问这个xls文件之前,我已成功获取应用程序的params来自位于服务器上同一文件夹中的文本文件,因为xls文件使用此代码:

encoded = Files.readAllBytes(Paths.get(dir+fileName));
return new String(encoded,getFileCharset(dir+fileName));

所以我的意思是我拥有在目录中阅读和写作的所有权利。

我试图谷歌这个,但没有找到任何可能有用的东西。我真的被困在这里了。服务器上的文件夹与我的win xp上的文件夹相同,并赢得7台家用电脑。我总是在所有机器上使用相同的xls文件。

所以我做错了什么?..

任何有用的帮助!

0 个答案:

没有答案