【问题标题】:read.xlsx() throws an error in Rread.xlsx() 在 R 中引发错误
【发布时间】:2015-08-21 06:52:26
【问题描述】:

我已经安装了xlsx 和依赖包。我还下载了安装依赖 rjava 包所需的 64 位 java。现在,当我尝试使用 read.xlsx 时,出现以下错误。安装64位java后可以成功加载包但是运行时报错read.xlsx

> library(xlsx)
Loading required package: rJava
Loading required package: xlsxjars
> read.xlsx("ngas.xlsx",sheetIndex = 1)
Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl,  : 
  java.util.zip.ZipException: invalid code -- missing end-of-block

【问题讨论】:

  • Error while loading rJava的可能重复
  • 您使用的是 32 位 R 吗?
  • > version _ platform x86_64-w64-mingw32 arch x86_64 os mingw32 system x86_64, mingw32 status major 3 minor 2.0 year 2015 month 04 day 16 svn rev 68180 language R version.string R version 3.2.0 ( 2015-04-16)
  • Sys.getenv("R_ARCH") 返回什么?您应该看到/i386/x64
  • > Sys.getenv("R_ARCH") [1] "/x64"

标签: java r excel r-xlsx


【解决方案1】:

我得到了完全相同的错误。由于 xlsx 文件的默认模式是二进制。因此,如果您添加 mode='wb',它就可以解决问题。

download.file(URL="", destfile="",mode='wb')

【讨论】:

    【解决方案2】:

    检查您下载的 xlsx 文件是否损坏,请使用 excel 打开它。我有同样的问题,发现下载的文件已损坏。我是使用测验页面中提供的链接手动下载的,没有使用 R 下载。

    【讨论】:

      猜你喜欢
      • 2012-09-19
      • 1970-01-01
      • 1970-01-01
      • 2020-11-23
      • 2021-09-19
      • 1970-01-01
      • 1970-01-01
      • 2019-09-09
      • 1970-01-01
      相关资源
      最近更新 更多