我正在尝试使用system2函数通过.jar文件迭代许多.txt文件。我在上一篇文章中解决了类似的问题
Processing multiple files through application in r
但是,为了坚持一个问题,一个回答规则,我创建了这篇文章,因为我现在试图在system2函数中包括一系列其他参数。
# find the files
jarinputfiles = list.files(pattern = '_formatted.txt', full.names = T)
# remove the extension
jarbase = tools::file_path_sans_ext(jarinputfiles)
# make the output file names
jaroutputfiles = paste0(jarbase, '_interval_defined.txt')
prog <- "-jar"
cp<-"TagProcessorBusyDays.jar"
lsec<-"240"
hsec<-"360"
jarintervals <- function(input, output) {
system2("java", args = c(prog, cp, jarinputfiles, jaroutputfiles, lsec, hsec))
}
lapply(seq_along(1:length(jarinputfiles)), function(f) jarintervals(jarinputfiles[f], jaroutputfiles[f]))
在文件列表上执行代码时,出现以下错误消息:
线程“主”中的异常java.lang.NumberFormatException:用于输入 字符串:“ ./ 954combined_formatted.txt”位于 java.lang.NumberFormatException.forInputString(未知源),位于 java.lang.Integer.parseInt(未知源) java.lang.Integer.parseInt(未知源) TagDataProcessor.main(TagDataProcessor.java:39)
我知道.jar文件可以正常工作,因为我在R中使用个人文件之前已经对其进行了测试。但是,我很茫然,我的代码可能是什么问题。