R – 错误:IllegalArgumentException(Java):您的InputStream既不是OLE2stream,也不是OOXMLstream

我使用R XLConnect包。 当我写了' XLConnect '函数,如loadWorkbook()readWorksheetFromFile()等,这个错误信息就会发生。

错误:IllegalArgumentException(Java):您的InputStream既不是OLE2stream,也不是OOXMLstream

如何解决这个问题呢?

在使用这个function之前,我采取了一些措施来防止R和Mac OS X之间的崩溃,方法是http://www.r-bloggers.com/getting-r-and-java-1-8-to-work-together-on -osx /链接告诉。

我已经使用Mac OS X.

此消息指出,您提供给loadWorkbook的文件未被识别为* .xls(BIFF-8)或* .xlsx(OOXML)文件。

我在Java更新后遇到同样的问题。 我要求将一个.xlsx文件加载到R XLConnect包的函数loadWorkbook()中。 我暂时通过要求加载一个.xls文件解决了这个问题。

我也使用OS X和这个function一段时间没有问题的工作后,这个错误引发没有明显的原因…但原因是非常简单的。 Excel(实际上,所有MS Office套件)在您打开文件的同时创build临时文件。 这个文件是隐藏的:

在这里输入图像描述

在我的例子中,我列出了.xlsx文件在循环中打开它们。 所以,第一个文件是一个隐藏的文件,并引发错误。 closuresexcel(删除这些文件)是避免这个错误的解决scheme。