通过system2函数处理多个文件和参数

时间:2019-11-20 14:27:47

标签: r windows

我正在尝试使用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中使用个人文件之前已经对其进行了测试。但是,我很茫然,我的代码可能是什么问题。

0 个答案:

没有答案