【发布时间】:2020-04-12 02:52:01
【问题描述】:
我试图在读取数据时禁止显示警告。
它仅在我第一次调用该函数时发生,但我在命令行中启动我的程序,所以每次我都会收到警告。
library('xlsx',character.only = TRUE)
data <- read.xlsx("test/Classeur1.xlsx", sheetName="Sheet1", encoding="UTF-8")
我收到此警告消息:
警告:发生了非法反射访问操作
警告:org.apache.poi.util.SAXHelper 的非法反射访问(文件:/C:/Users/frus73117/Documents/R/win-library/3.6/xlsxjars/java/poi-ooxml-3.10.1-20140818。 jar) 到构造函数 com.sun.org.apache.xerces.internal.util.SecurityManager()
警告:请考虑将此报告给 org.apache.poi.util.SAXHelper
的维护者 警告:使用 --illegal-access=warn 启用对进一步非法反射访问操作的警告
警告:所有非法访问操作将在未来版本中被拒绝
我尝试了一些功能,例如:
data <- suppressMessages(read.xlsx("test/Classeur1.xlsx", sheetName="Sheet1", encoding="UTF-8"))
data <- suppressWarnings(read.xlsx("test/Classeur1.xlsx", sheetName="Sheet1", encoding="UTF-8"))
但没有任何改变。
任何帮助或建议将不胜感激!
【问题讨论】:
-
这些警告不是由
read.xlsx抛出的(在这种情况下suppressWarnings()会起作用),而是来自底层的Java 代码。capture.output()可能工作... -
你能给我们看看文件“Classeur1.xlsx”吗?
-
我试过这个功能,即使
invisible(capture.output(...))似乎也没有抑制这些警告... xlsx 文件是空的用于测试,但它与完整文件的结果相同。
标签: r xlsx suppress-warnings